JDK 中的
TimeZone
和 ZoneId
类有什么区别?
根据我的研究,
TimeZone
是旧时区类,ZoneId
是新时区类。未来ZoneId
会取代TimeZone
吗?如果是,为什么TimeZone
没有标记为@Deprecated
?
是否有更多关于两者之间差异的信息来帮助我决定应该在项目中使用哪个类?
所有“旧”的时间相关类型(
java.util.Calendar
、java.util.Date
、java.util.TimeZone
等)仍然存在,并且很可能永远不会被弃用,因为如此多的代码依赖于它们。然而,对于任何 new 代码(或者至少是全新的项目),最好使用 java.time
和相关包来处理everything 来缩短处理时间。