java - 如何创建时钟变量 - java.time
问题描述
我正在使用以下包:https ://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html
如何创建时钟变量?我试过了:
Clock clock = new Clock();
但我得到了错误:
TimeCheck.java:14:错误:时钟是抽象的;无法实例化
我也试过私人时钟;在 main() 函数之外,但是当我运行 main() 函数并尝试 clock.instant() 它说:
TimeCheck.java:16:错误:不能从静态上下文引用非静态变量时钟
解决方案
java.time类自动使用默认Clock
对象。
Instant now = Instant.now() ; // Default `Clock` used implicitly.
Clock
如果你想改变行为,你只需要获得一个。通常用于测试或演示。
java.time框架避免使用new
. 而是寻找工厂方法。
查看Clock
类上的静态方法。您将找到方法为您提供不同节奏的各种时钟,或固定到特定时刻,或持续延迟运行。
Clock fixedClock = Clock.fixed( Instant.EPOCH , ZoneId.of( "Asia/Kolkata" ) ) ;
Instant nowFake = Instant.now( fixedClock ) ;
推荐阅读
- firebase - 从 Google Cloud Storage 获取永久网址?
- android - Firemonkey TCameraComponent 设置恢复问题
- reactjs - React onClick 事件调用 API 两次
- rabbitmq - 可以配置 RabbitMQ 在收到 n 条消息后通知消费者吗?
- wordpress - 如何更改密码更改电子邮件的内容。这可能吗?
- python - 是否可以在我的烧瓶应用程序中将图形界面集成到网页中?
- python - 在 python 中的 virtualenv 中运行命令
- javascript - 如何在单个标签中使用两个 data-min 和 data-max 属性
- python - 工厂类方法是否违反了 Liskov 替换原则?
- angular7 - 如何在foreach中添加延迟