许多人都知道,在欧洲,我们有夏季和冬季。欧盟成员国的时钟每年两次从冬季切换为夏季(3月的最后一个星期日),然后从夏季切换为冬季(10月的最后一个星期日)(更多信息here)。现在,欧洲委员会将提议消除这些时钟更改。
在Java中,我们有日历,并且日历总是知道正确的timeZone(即,夏季为GMT + 1,冬季为GMT + 2)。 Java如何管理它?而且,如果更改了,它将如何影响我们的系统?
因此,正如我在评论中看到的那样,不应进行任何更改,因为Java使用了系统时间,并且它是由NTP设置的,对吧?
答案 0 :(得分:0)
我会说java.util.TimeZone
。
TimeZone
代表时区偏移量,还可以计算出夏令时。
通常,您会使用TimeZone
得到一个getDefault
,它会根据程序运行的时区创建一个TimeZone
。例如,对于在日本运行的程序,getDefault
根据日本标准时间创建一个TimeZone object
。
您还可以使用TimeZone
和时区ID来获取getTimeZone
。例如,美国太平洋时区的时区ID为“ America / Los_Angeles”。因此,您可以使用以下代码获取美国太平洋时间TimeZone对象:
TimeZone tz = TimeZone.getTimeZone("America/Los_Angeles");