java - Java 如何管理夏令时?

标签 java

<分区>

正如你们中的许多人所知,在欧洲我们有夏季和冬季。每年两次,所有欧盟成员国的时钟从冬季切换到夏季(三月的最后一个星期日),然后从夏季切换回冬季(十月的最后一个星期日)(更多信息 here )。现在,欧盟委员会即将提议取消这些时钟更改。

在 Java 中,我们有日历,日历总是知道正确的时区(即 GMT+1 用于夏季,GMT+2 用于冬季)。 Java 是如何管理这个的?而且,如果它发生变化,会对我们的系统产生怎样的影响?

所以,正如我在评论中看到的那样,不应该有任何更改,因为 Java 使用系统时间并且它是由 NTP 设置的,对吧?

最佳答案

我会说 java.util.TimeZone

TimeZone 表示时区偏移量,也计算夏令时。 通常,您使用 getDefault 获取一个 TimeZone,它根据程序运行的时区创建一个 TimeZone。例如,对于在日本运行的程序,getDefault 根据日本标准时间创建一个 TimeZone 对象

您还可以使用 getTimeZone 连同时区 ID 获取 TimeZone。例如,美国太平洋时区的时区 ID 是“America/Los_Angeles”。因此,您可以获得美国太平洋时间 TimeZone 对象:

TimeZone tz = TimeZone.getTimeZone("America/Los_Angeles");

关于java - Java 如何管理夏令时?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52113545/

相关文章:

java - 将文件从 Jenkins 工作区(从 Docker 容器内部)复制到本地驱动器

java - Maven 构建导致 Java 1.7 出现 VerifyError

java - 每个类都是Class的实例吗

java - 如何处理Java编码问题(尤其是xml)?

java - 如何启用 cxf xml 中的寻址功能?

java - 对所有线程具有完全原子性,而不影响性能或吞吐量

java - 调试 ClassCastException

java - 担心使用 Java 和 JavaFX 部署 GUI 共享软件...运行时问题?

java - 是否可以在 PDFBOX 中调整文本?

java - TitanFactory静态构建方法