Что ж, лучше использовать объект Calendar, как предложено в других ответах. Однако, если вы действительно хотите установить глобальный часовой пояс, вы можете использовать TimeZone.setDefault(TimeZone.getTimeZone("UTC"));
в начале кода приложения. Существует также user.timezone
системное свойство Java.
Кроме того (просто интересно знать), похоже, что единственная страна, фактически живущая по времени по Гринвичу / UTC (без изменения летнего времени), это Либерия.
Фактически, Date
объекты сами по себе всегда не зависят от локали и часового пояса. Его метод getTime()
всегда возвращает количество миллисекунд, прошедших с 1 января 1970 года 00:00:00 (без учета високосных секунд) в UTC . Но если вы хотите получить что-то еще, кроме миллисекунд, вы должны использовать Calendar
, что зависит от часового пояса . Но это правильный путь. Вы не используете эти устаревшие методы в Date
классе, не так ли?