The initial value of the ```user.timezone``` system property is undefined unless set using a command line argument, for example, ```-Duser.timezone="America/New_York"```. The first time the default timezone is needed, if `user.timezone` is undefined or empty the timezone provided by the operating system is used. Previously, the initial value was the empty string. In JDK 12, `System.getProperty("user.timezone")` may return null.