In Java 8 Date and Time went another remodeling resulting in much better API and concepts better reflecting developer’s needs. Here we’ll go through Java 8 new Date and Time concepts.
The java.time.Clock class provides access to the current instant, date and time using a time-zone. These are the main properties of the class: Use of the Clock class is optional, because all key date-time classes have a now() factory method that uses the system clock in the default time zone. Use Dependency Injection framework to …
java.time.Clock.tickSeconds(ZoneId) The method Clock.tickSeconds(ZoneId zone) returns a clock that will tick in seconds using the best available clock (usually system clock).
java.time.Clock.tick(Clock baseClock, Duration duration) The method Clock.tick(Clock, Duration) returns a clock that will return instants from given baseClock truncated to given duration.
java.time.Clock.systemUTC() The method Clock.systemUTC() returns a clock that will use the best available system clock to convert instant into date and time using UTC time-zone.
java.time.Clock.systemDefaultZone() The method Clock.systemDefaultZone() returns a clock that will use the best available system clock to convert instant into date and time using default time-zone.
java.time.Clock.offset(Clock,Duration) The method java.time.Clock.offset(Clock,Duration) returns a wrapper around given Clock with the specified Duration added. This clock implementation allows easily to jump into the past and future.
java.time.ZoneId.getAvailableZoneIds() The method ZoneId.getAvailableZoneIds() returns set of available zone IDs, including all available region-based IDs. Usually passed to of(String zoneId) to create ZoneId.
java.time.Clock.system(ZoneId zone) The method java.time.Clock.system(ZoneId zone) a clock that uses the best available system clock in the specified zone – never null.
java.time.Clock.fixed() The method java.time.Clock.fixed() returns a clock that always returns the same time. This type of clock is mainly useful in testing.