jdk8的时间类
Instant类(在java.time中)
1、实例化:(Instant表示的是地球的时间)
Instant类中的构造方法时私有的,因此不能直接new一个Instant对象,想要得到一个Instant对象就必须找一下Instant类中的内部方法看有没有返回一个Instant对象的方法:(不止一个,可以自己去API中查)
结果:(得到的时格林尼治标准时间(英国)UTC时间:世界统一时间)
2、加一个时区:
结果:(现在就是本地时间)
不能直接返回now,因为now是Instant类的对象,而Instant本来就是表示UTC时间的,直接在Instant上加上小时数是不合理的,要用上述这种方法得到本地时间。
直接在instant上增加以达到自己想要的本地时间:
注:再调用一个方法时要注意的几点:
(1)参数列表(列表中的类可以是它的子类)
(2)方法是改变调用它的类,还是返回的还是调用它的类
Duration类
LocaDate类(表示的是本地时间)
实例化:
DateTimeFormatter类
实例:
各种时间类之间的转化
1、Instant与Date
(1)Instant到Date
(2)Date到Instant
Instant与LocalDateTime
LocalDateTime到LocalDate
LocalDateTime到LocalTime
注意:转的时候只能由精度高的转成精度低的
LocalTime到LocalDateTime、LocalDate到LocalDateTime就无法实现转换