Класс ZoneOffsetTransitionRule

Все реализованные интерфейсы:
Serializable
public final class ZoneOffsetTransitionRule
extends Object
implements Serializable

Правило, определяющее, как создать переход.

Этот класс позволяет выражать правила для определения будущих переходов. Правило может быть записано в нескольких формах:

  • 16 марта
  • воскресенье на или после 16 марта
  • воскресенье на или до 16 марта
  • последнее воскресенье февраля
Эти различные типы правил могут быть выражены и запрошены.
Требования к реализации:
Этот класс неизменяемый и потокобезопасный.
С:
1.8
См. также:
Сериализованная форма

Вложенные классы

Модификатор и тип Класс Описание
static class  ZoneOffsetTransitionRule.TimeDefinition

Определение способа преобразования местного времени в фактическую дату и время перехода.

Методы

Модификатор и тип Метод Описание
ZoneOffsetTransition createTransition​(int year)

Создает экземпляр перехода для указанного года.

boolean equals​(Object otherRule)

Проверяет, равен ли этот объект другому.

int getDayOfMonthIndicator()

Получает индикатор дня месяца перехода.

DayOfWeek getDayOfWeek()

Получает день недели перехода.

LocalTime getLocalTime()

Получает местное время перехода, которое необходимо проверить с помощью isMidnightEndOfDay().

Month getMonth()

Получает месяц перехода.

ZoneOffset getOffsetAfter()

Получает смещение после перехода.

ZoneOffset getOffsetBefore()

Получает смещение до перехода.

ZoneOffset getStandardOffset()

Получает стандартное смещение, действующее в момент перехода.

ZoneOffsetTransitionRule.TimeDefinition getTimeDefinition()

Получает определение времени, указывающее, как преобразовать время в мгновение.

int hashCode()

Возвращает подходящий код хэширования.

boolean isMidnightEndOfDay()

Является ли местное время перехода полночь в конце дня.

static ZoneOffsetTransitionRule of​(Month month, int dayOfMonthIndicator, DayOfWeek dayOfWeek, LocalTime time, boolean timeEndOfDay, ZoneOffsetTransitionRule.TimeDefinition timeDefnition, ZoneOffset standardOffset, ZoneOffset offsetBefore, ZoneOffset offsetAfter)

Получает экземпляр, определяющий ежегодное правило для создания переходов между двумя смещениями.

String toString()

Возвращает строку, описывающую этот объект.

Методы, объявленные в классе java.lang.Object

clone, finalize, getClass, notify, notifyAll, wait, wait, wait

Методы

of

public static ZoneOffsetTransitionRule of(Month month,
                                          int dayOfMonthIndicator,
                                          DayOfWeek dayOfWeek,
                                          LocalTime time,
                                          boolean timeEndOfDay,
                                          ZoneOffsetTransitionRule.TimeDefinition timeDefnition,
                                          ZoneOffset standardOffset,
                                          ZoneOffset offsetBefore,
                                          ZoneOffset offsetAfter)

Получает экземпляр, определяющий ежегодное правило для создания переходов между двумя смещениями.

Приложения обычно должны получать экземпляр из ZoneRules. Этот фабричный метод предназначен только для использования при создании ZoneRules.

Параметры:
month - месяц месяца-дня первого дня недели перехода, не null
dayOfMonthIndicator - день месяца-дня недели перехода, положительное значение, если неделя на или после этого дня, отрицательное значение, если неделя на или до этого дня, считая с последнего дня месяца, от -28 до 31, исключая 0
dayOfWeek - необходимый день недели, null, если месяц-день не должен изменяться
time - время перехода в смещении 'до', не null
timeEndOfDay - указывает ли время полночь в конце дня
timeDefnition - способ интерпретации перехода
standardOffset - стандартное смещение, действующее в момент перехода, не null
offsetBefore - смещение до перехода, не null
offsetAfter - смещение после перехода, не null
Возвращает:
правило, не null
Исключение:
IllegalArgumentException - если индикатор дня месяца неверный
IllegalArgumentException - если флаг конца дня true, а время не полночь
IllegalArgumentException - если time.getNano() возвращает ненулевое значение

getMonth

public Month getMonth()

Получает месяц перехода.

Если правило определяет точную дату, то месяц — это месяц этой даты.

Если правило определяет неделю, где переход может произойти, то месяц — это месяц либо самой ранней, либо самой поздней возможной даты перехода.

Возвращает:
месяц перехода, не null

getDayOfMonthIndicator

public int getDayOfMonthIndicator()

Получает индикатор дня месяца перехода.

Если правило определяет точную дату, то день — это день этой даты.

Если правило определяет неделю, где переход может произойти, то день определяет либо начало, либо конец недели перехода.

Если значение положительное, то оно представляет обычный день месяца и является самой ранней возможной датой перехода. Дата может относиться к 29 февраля, которая должна обрабатываться как 1 марта в не високосных годах.

Если значение отрицательное, то оно представляет количество дней назад от конца месяца, где -1 — последний день месяца. В этом случае определённый день является самой поздней возможной датой перехода.

Возвращает:
индикатор дня месяца, от -28 до 31, исключая 0

getDayOfWeek

public DayOfWeek getDayOfWeek()

Получает день недели перехода.

Если правило определяет точную дату, то это возвращает null.

Если правило определяет неделю, где может произойти переход, то этот метод возвращает день недели, к которому будет скорректирован месяц-день. Если день положительный, то корректировка происходит позже. Если день отрицательный, то корректировка происходит раньше.

Возвращает:
день недели, когда происходит переход, null, если правило определяет точную дату

getLocalTime

public LocalTime getLocalTime()

Получает местное время перехода, которое необходимо проверить с помощью isMidnightEndOfDay().

Время преобразуется в мгновение с помощью определения времени.

Возвращает:
местное время перехода, не null

isMidnightEndOfDay

public boolean isMidnightEndOfDay()

Является ли местное время перехода полночь в конце дня.

Переход может быть представлен как происходящий в 24:00.

Возвращает:
указывает ли местное время полночь в начале или конце дня

getTimeDefinition

public ZoneOffsetTransitionRule.TimeDefinition getTimeDefinition()

Получает определение времени, указывающее, как преобразовать время в мгновение.

Местное время можно преобразовать в мгновение, используя стандартное смещение, смещение по часам или UTC.

Возвращает:
определение времени, не null

getStandardOffset

public ZoneOffset getStandardOffset()

Получает стандартное смещение, действующее в момент перехода.

Возвращает:
стандартное смещение, не null

getOffsetBefore

public ZoneOffset getOffsetBefore()

Получает смещение до перехода.

Возвращает:
смещение до, не null

getOffsetAfter

public ZoneOffset getOffsetAfter()

Получает смещение после перехода.

Возвращает:
смещение после, не null

createTransition

public ZoneOffsetTransition createTransition(int year)

Создает экземпляр перехода для указанного года.

Вычисления выполняются с использованием хронологии ISO-8601.

Параметры:
year - год для создания перехода, не null
Возвращает:
экземпляр перехода, не null

equals

public boolean equals(Object otherRule)

Проверяет, равен ли этот объект другому.

Сравнивается всё состояние объекта.

Переопределяет:
equals в классе Object
Параметры:
otherRule - другой объект для сравнения, null возвращает false
Возвращает:
true, если равны
См. также:
Object.hashCode(), HashMap

hashCode

public int hashCode()

Возвращает подходящий код хэширования.

Переопределяет:
hashCode в классе Object
Возвращает:
код хэширования
См. также:
Object.equals(java.lang.Object), System.identityHashCode(java.lang.Object)

toString

public String toString()

Возвращает строку, описывающую этот объект.

Переопределяет:
toString в классе Object
Возвращает:
строку для отладки, не null

© 1993, 2020, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/time/zone/ZoneOffsetTransitionRule.html

Spec-Zone .ru
спецификации, руководства, описания, API