Иллюстрированный самоучитель по Java

Часовой пояс и летнее время. Класс Calendar.

Методы установки и изменения часового пояса (time zone), а также летнего времени DST (Daylight Savings Time), собраны в абстрактном классе Timezone из пакета java.utii. В этом же пакете есть его реализация – подкласс SimpleTimeZone.

В классе simpieTimeZon e три конструктора, но чаще всего объект создается статическим методом getoefault(), возвращающим часовой пояс, установленный на машине, выполняющей программу.

В этих классах множество методов работы с часовыми поясами, но в большинстве случаев требуется только узнать часовой пояс на машине, выполняющей программу, статическим методом getDefault (), проверить, осуществляется ли переход на летнее время, логическим методом useDaylightTime (), и установить часовой пояс методом setDef ault (TimeZone zone).

Класс Calendar

Класс Calendar – абстрактный, в нем собраны общие свойства календарей: юлианского, григорианского, лунного. В Java API пока есть только одна его реализация – подкласс GregorianCalendar.

Поскольку calendar – абстрактный класс, его экземпляры создаются четырьмя статическими методами по заданной локали и/или часовому поясу:

  • Calendar getlnstance()
  • Calendar getlnstance(Locale loc)
  • Calendar getlnstance(TimeZone tz)
  • Calendar getlnstance(TimeZone tz, Locale loc)

Для работы с месяцами определены целочисленные константы от JANUARY до DECEMBER, 3 для работы с днями недели – константы MONDAY до SUNDAY.

Первый день недели можно узнать методом int getFirstDayOfweek(), a установить – методом setFirstDayOfWeek(int day), например:

setFirstDayOfWeek(Calendar.MONDAY)

Остальные методы позволяют просмотреть время и часовой пояс или установить их.

Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.