Spec-Zone.ru › OpenJDK 24

Класс ZoneOffsetTransition

java.lang.Object
java.time.zone.ZoneOffsetTransition
Все реализованные интерфейсы:
Serializable, Comparable<ZoneOffsetTransition>
public final class ZoneOffsetTransition extends Object implements Comparable<ZoneOffsetTransition>, Serializable
Переход между двумя смещениями, вызванный разрывом в локальной временной шкале.

Переход между двумя смещениями обычно является результатом перехода на летнее время. Разрыв обычно представляет собой пробел весной и перекрытие осенью. ZoneOffsetTransition моделирует переход между двумя смещениями.

Пробелы возникают там, где локальные даты и времена просто не существуют. Например, когда смещение изменяется с +03:00 на +04:00. Это можно описать как «сегодня ночью в 1:00 часы перейдут на один час вперёд».

Перекрытия возникают там, где локальные даты и времена существуют дважды. Например, когда смещение изменяется с +04:00 на +03:00. Это можно описать как «сегодня ночью в 2:00 часы перейдут на один час назад».

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

Краткое описание методов

Модификатор и тип Метод Описание
int compareTo(ZoneOffsetTransition otherTransition)
Сравнивает этот переход с другим на основе момента перехода.
boolean equals(Object other)
Проверяет, равен ли этот объект другому.
LocalDateTime getDateTimeAfter()
Получает локальную дату и время перехода, как было бы выражено с помощью смещения «после».
LocalDateTime getDateTimeBefore()
Получает локальную дату и время перехода, как было бы выражено с помощью смещения «до».
Duration getDuration()
Получает продолжительность перехода.
Instant getInstant()
Получает момент перехода.
ZoneOffset getOffsetAfter()
Получает смещение после перехода.
ZoneOffset getOffsetBefore()
Получает смещение до перехода.
int hashCode()
Возвращает подходящий хэш-код.
boolean isGap()
Представляет ли этот переход разрыв в локальной временной шкале.
boolean isOverlap()
Представляет ли этот переход перекрытие в локальной временной шкале.
boolean isValidOffset(ZoneOffset offset)
Проверяет, является ли указанное смещение допустимым во время этого перехода.
static ZoneOffsetTransition of(LocalDateTime transition, ZoneOffset offsetBefore, ZoneOffset offsetAfter)
Получает экземпляр, определяющий переход между двумя смещениями.
long toEpochSecond()
Получает момент перехода в виде эпохи.
String toString()
Возвращает строку, описывающую этот объект.

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

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

Подробности методов

of

public static ZoneOffsetTransition of(LocalDateTime transition, ZoneOffset offsetBefore, ZoneOffset offsetAfter)
Получает экземпляр, определяющий переход между двумя смещениями.

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

Параметры:
transition - дата-время перехода в момент перехода, который фактически никогда не происходит, выраженное относительно смещения до перехода, не null
offsetBefore - смещение до перехода, не null
offsetAfter - смещение в момент и после перехода, не null
Возвращает:
переход, не null
Исключения:
IllegalArgumentException - если offsetBefore и offsetAfter равны или transition.getNano() возвращает ненулевое значение

getInstant

public Instant getInstant()
Получает мгновение перехода.

Это мгновение разрыва, которое определяется как первое мгновение, когда применяется смещение "после".

Методы getInstant(), getDateTimeBefore() и getDateTimeAfter() все представляют одно и то же мгновение.

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

toEpochSecond

public long toEpochSecond()
Получает мгновение перехода в виде эпохи секунд.
Возвращает:
эпоху перехода в секундах

getDateTimeBefore

public LocalDateTime getDateTimeBefore()
Получает локальную дату-время перехода, как если бы она была выражена со смещением "до".

Это дата-время, где начинается разрыв, выраженное со смещением "до". В этот момент фактически используется смещение "после", поэтому комбинация этой даты-времени и смещения "до" никогда не произойдёт.

Комбинация даты-времени "до" и смещения представляет то же мгновение, что и дата-время "после" и смещение.

Возвращает:
дата-время перехода, выраженное со смещением "до", не null

getDateTimeAfter

public LocalDateTime getDateTimeAfter()
Получает локальную дату-время перехода, как если бы она была выражена со смещением "после".

Это первая дата-время после разрыва, когда применяется новое смещение.

Комбинация даты-времени "до" и смещения представляет то же мгновение, что и дата-время "после" и смещение.

Возвращает:
дата-время перехода, выраженное со смещением "после", не null

getOffsetBefore

public ZoneOffset getOffsetBefore()
Получает смещение до перехода.

Это смещение, используемое до мгновения перехода.

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

getOffsetAfter

public ZoneOffset getOffsetAfter()
Получает смещение после перехода.

Это смещение, используемое в момент и после мгновения перехода.

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

getDuration

public Duration getDuration()
Получает продолжительность перехода.

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

Возвращает:
продолжительность перехода, положительная для разрывов, отрицательная для наложений

isGap

public boolean isGap()
Представляет ли этот переход разрыв в локальной временной шкале.

Разрывы возникают, когда локальные даты-времена просто не существуют. Примером является изменение смещения с +01:00 на +02:00. Это можно описать как «сегодня ночью в 1 час часы перейдут вперёд на один час».

Возвращает:
true, если этот переход представляет собой разрыв, false, если это наложение

isOverlap

public boolean isOverlap()
Представляет ли этот переход наложение на локальной временной шкале.

Наложения возникают, когда локальные даты-времена существуют дважды. Примером является изменение смещения с +02:00 на +01:00. Это можно описать как «сегодня ночью в 2 часа часы перейдут назад на один час».

Возвращает:
true, если этот переход представляет собой наложение, false, если это разрыв

isValidOffset

public boolean isValidOffset(ZoneOffset offset)
Проверяет, является ли указанное смещение допустимым во время этого перехода.

Это проверяет, будет ли заданное смещение допустимым в какой-то момент перехода. Разрыв всегда вернёт false. Наложение вернёт true, если смещение является либо смещением "до", либо смещением "после".

Параметры:
offset - смещение для проверки, null возвращает false
Возвращает:
true, если смещение допустимо во время перехода

compareTo

public int compareTo(ZoneOffsetTransition otherTransition)
Сравнивает этот переход с другим на основе мгновения перехода.

Это сравнивает мгновения каждого перехода. Смещения игнорируются, что делает этот порядок несовместимым с equals.

Определено в:
compareTo в интерфейсе Comparable<ZoneOffsetTransition>
Параметры:
otherTransition - переход для сравнения, не null
Возвращает:
значение компаратора, то есть сравнение мгновения этого перехода с мгновением otherTransition

equals

public boolean equals(Object other)
Проверяет, равен ли этот объект другому.

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

Переопределяет:
equals в классе Object
Параметры:
other - другой объект для сравнения, 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, 2025, 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://download.java.net/java/early_access/jdk24/docs/api/java.base/java/time/zone/ZoneOffsetTransition.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API