【发布时间】:2017-08-07 00:22:14
【问题描述】:
我目前正在研究 java.time API,我注意到 java.time 中的大多数类(例如LocalDate、OffsetDateTime)实现了TemporalAdjuster 接口,但ZonedDateTime 没有。我只是想知道为什么会这样?为什么要排除ZonedDateTime 实现TemporalAdjuster 接口?
【问题讨论】:
-
我认为原因在于接口的名称。
ZonedDateTime不是用作修饰符,而是用作给定的“值”。同时,任何实现TemporalAdjuster的东西都旨在调整其他“价值”对象。 -
鉴于 OffsetDateTime 确实 实现了 TemporalAdjuster,我认为这与夏令时切换有关,并且不知道它们何时在 Temporal 上下文中发生。但在@JonSkeet 加入之前,我不会赌其他人知道正确答案。
-
@ErwinBolwidt 哈哈,没有 JonSkeet 我们怎么活
标签: java time java-8 java-time