Интерфейс Chronology
- Все суперинтерфейсы:
Comparable<Chronology>
- Все известные классы-реализации:
AbstractChronology, HijrahChronology, IsoChronology, JapaneseChronology, MinguoChronology, ThaiBuddhistChronology
public interface Chronology extends Comparable<Chronology>
Основной API для работы с датами и временем построен на календарной системе ISO. Хронология используется за кулисами для представления общего понятия календарной системы. Например, японской, минго, тайской буддийской и других.
Большинство других календарных систем также используют общие понятия года, месяца и дня, связанные с циклами движения Земли вокруг Солнца и Луны вокруг Земли. Эти общие понятия определены в ChronoField и доступны для использования в любой реализации Chronology:
LocalDate isoDate = ... ThaiBuddhistDate thaiDate = ... int isoYear = isoDate.get(ChronoField.YEAR); int thaiYear = thaiDate.get(ChronoField.YEAR);Как показано, несмотря на то что объекты даты относятся к разным календарным системам и представлены разными экземплярами
Chronology, к обоим можно обратиться с помощью одной и той же константы из ChronoField. Полное обсуждение последствий этого см. в разделе ChronoLocalDate. В общем случае рекомендуется использовать известные LocalDate на основе ISO, а не ChronoLocalDate. Хотя объект Chronology обычно использует ChronoField и основан на модели даты с эрой, годом эры, месяцем и днем, это не является обязательным. Экземпляр Chronology может представлять совершенно другой тип календарной системы, например календарь майя.
На практике экземпляр Chronology также выполняет роль фабрики. Метод of(String) позволяет получить экземпляр по идентификатору, а метод ofLocale(Locale) — по локали.
Экземпляр Chronology предоставляет набор методов для создания экземпляров ChronoLocalDate. Классы дат используются для работы с конкретными датами.
-
dateNow() -
dateNow(clock) -
dateNow(zone) -
date(yearProleptic, month, day) -
date(era, yearOfEra, month, day) -
dateYearDay(yearProleptic, dayOfYear) -
dateYearDay(era, yearOfEra, dayOfYear) -
date(TemporalAccessor)
Добавление новых календарей
Приложения могут расширять набор доступных хронологий. Для добавления новой календарной системы необходимо реализоватьChronology, ChronoLocalDate и Era. Большая часть логики, специфичной для календарной системы, будет реализована в ChronoLocalDate. Реализация Chronology выполняет роль фабрики. Для обнаружения дополнительных хронологий используется ServiceLoader. В каталог META-INF/services необходимо добавить файл с именем 'java.time.chrono.Chronology', содержащий список классов реализации. Дополнительные сведения о загрузке служб см. в документации ServiceLoader. При поиске по идентификатору или calendarType сначала находятся календарные системы, предоставляемые системой, а затем — предоставляемые приложением.
Каждая хронология должна иметь уникальный в пределах системы идентификатор. Если хронология представляет календарную систему, определённую спецификацией CLDR, тип календаря представляет собой конкатенацию типа CLDR и, если применимо, варианта CLDR.
- Требования к реализации:
- Этот интерфейс необходимо реализовывать с осторожностью, чтобы обеспечить корректную работу других классов. Все реализации, которые можно создать, должны быть final, неизменяемыми и потокобезопасными. По возможности подклассы должны быть сериализуемыми.
- С версии:
- 1.8
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
compareTo |
Сравнивает эту хронологию с другой хронологией. |
ChronoLocalDate |
date |
Получает локальную дату в этой хронологии из полей пролептического года, месяца и дня. |
default ChronoLocalDate |
date |
Получает локальную дату в этой хронологии из полей эры, года эры, месяца и дня. |
ChronoLocalDate |
date |
Получает локальную дату в этой хронологии из другого объекта времени. |
ChronoLocalDate |
dateEpochDay |
Получает локальную дату в этой хронологии из числа дней от эпохи. |
default ChronoLocalDate |
dateNow() |
Получает текущую локальную дату в этой хронологии по системным часам в часовом поясе по умолчанию. |
default ChronoLocalDate |
dateNow |
Получает текущую локальную дату в этой хронологии по указанным часам. |
default ChronoLocalDate |
dateNow |
Получает текущую локальную дату в этой хронологии по системным часам в указанном часовом поясе. |
ChronoLocalDate |
dateYearDay |
Получает локальную дату в этой хронологии из полей пролептического года и дня года. |
default ChronoLocalDate |
dateYearDay |
Получает локальную дату в этой хронологии из полей эры, года эры и дня года. |
default long |
epochSecond |
Получает количество секунд, прошедших с начала эпохи 1970-01-01T00:00:00Z. |
default long |
epochSecond |
Получает количество секунд, прошедших с начала эпохи 1970-01-01T00:00:00Z. |
boolean |
equals |
Проверяет, равна ли эта хронология другой хронологии. |
Era |
eraOf |
Создаёт объект эры хронологии из числового значения. |
List |
eras() |
Получает список эр хронологии. |
static Chronology |
from |
Получает экземпляр Chronology из объекта времени. |
static Set |
getAvailableChronologies() |
Возвращает доступные хронологии. |
String |
getCalendarType() |
Получает тип календаря календарной системы. |
default String |
getDisplayName |
Получает текстовое представление этой хронологии. |
String |
getId() |
Получает идентификатор хронологии. |
int |
hashCode() |
Хеш-код этой хронологии. |
default boolean |
isIsoBased() |
Проверяет, основана ли эта хронология на ISO. |
boolean |
isLeapYear |
Проверяет, является ли указанный год високосным. |
default ChronoLocalDateTime |
localDateTime |
Получает локальные дату и время в этой хронологии из другого объекта времени. |
static Chronology |
of |
Получает экземпляр Chronology по идентификатору хронологии или типу календарной системы. |
static Chronology |
ofLocale |
Получает экземпляр Chronology по локали. |
default ChronoPeriod |
period |
Получает период для этой хронологии, заданный в годах, месяцах и днях. |
int |
prolepticYear |
Вычисляет пролептический год по эре и году эры. |
ValueRange |
range |
Получает диапазон допустимых значений для указанного поля. |
ChronoLocalDate |
resolveDate |
Преобразует разобранные значения ChronoField в дату во время разбора. |
String |
toString() |
Выводит эту хронологию как String. |
default ChronoZonedDateTime |
zonedDateTime |
Получает ChronoZonedDateTime в этой хронологии из Instant. |
default ChronoZonedDateTime |
zonedDateTime |
Получает ChronoZonedDateTime в этой хронологии из другого объекта времени. |
Подробное описание методов
from
static Chronology from(TemporalAccessor temporal)
Chronology из объекта времени. Этот метод получает хронологию на основе указанного объекта времени. TemporalAccessor представляет собой произвольный набор сведений о дате и времени, который эта фабрика преобразует в экземпляр Chronology.
Преобразование получает хронологию с помощью TemporalQueries.chronology(). Если у указанного объекта времени нет хронологии, возвращается IsoChronology.
Сигнатура этого метода соответствует сигнатуре функционального интерфейса TemporalQuery, что позволяет использовать его в качестве запроса через ссылку на метод, Chronology::from.
- Параметры:
-
temporal— объект времени для преобразования, не null - Возвращает:
- хронологию, не null
- Исключения:
-
DateTimeException— если преобразование вChronologyневозможно
ofLocale
static Chronology ofLocale(Locale locale)
Chronology из локали. Этот метод возвращает Chronology на основе указанной локали; обычно возвращается IsoChronology. Другие календарные системы возвращаются только в том случае, если они явно выбраны в локали.
Класс Locale предоставляет доступ к различным сведениям, полезным для локализации приложения. К ним относятся язык и регион, например «en-GB» для английского языка, используемого в Великобритании.
Класс Locale также поддерживает механизм расширений, который можно использовать для указания календарной системы. Этот механизм представляет собой набор пар ключ-значение, где календарной системе соответствует ключ «ca». Например, локаль «en-JP-u-ca-japanese» обозначает английский язык, используемый в Японии, с японской календарной системой.
Этот метод находит нужную календарную систему способом, эквивалентным передаче «ca» в Locale.getUnicodeLocaleType(String). Если ключ «ca» отсутствует, возвращается IsoChronology.
Обратите внимание, что поведение этого метода отличается от поведения устаревшего метода Calendar.getInstance(Locale). Если этому методу передать локаль «th_TH», он вернет BuddhistCalendar. В отличие от него, этот метод вернет IsoChronology. Передача локали «th-TH-u-ca-buddhist» в любой из методов приведет к выбору тайской буддийской календарной системы, поэтому такой подход рекомендуется для дальнейшей локализации тайской календарной системы.
Похожая, но более простая ситуация возникает с японской календарной системой. Ранее для доступа к календарю использовалась локаль «jp_JP_JP». Однако, в отличие от тайской локали, «ja_JP_JP» автоматически преобразуется в Locale в современную и рекомендуемую форму «ja-JP-u-ca-japanese». Таким образом, этот метод и Calendar#getInstance(Locale) ведут себя одинаково.
- Параметры:
-
locale— локаль для получения календарной системы, не null - Возвращает:
- календарную систему, связанную с локалью, не null
- Исключения:
-
DateTimeException— если календарь, указанный в локали, не найден
of
static Chronology of(String id)
Chronology по идентификатору хронологии или типу календарной системы. Этот метод возвращает хронологию на основе идентификатора или типа. chronology ID однозначно определяет хронологию. calendar system type определен спецификацией CLDR.
Хронология может быть системной или предоставленной приложением с помощью конфигурации ServiceLoader.
Поскольку некоторые календари можно настраивать, идентификатор или тип обычно соответствуют настройкам по умолчанию. Например, для григорианского календаря можно задать несколько дат перехода с юлианского календаря, но поиск возвращает только дату перехода по умолчанию.
- Параметры:
-
id— идентификатор хронологии или тип календарной системы, не null - Возвращает:
- хронологию с запрошенным идентификатором, не null
- Исключения:
-
DateTimeException— если хронология не найдена
getAvailableChronologies
static Set<Chronology> getAvailableChronologies()
Каждая возвращенная Chronology доступна для использования в системе. Множество хронологий включает системные хронологии и любые хронологии, предоставленные приложением с помощью конфигурации ServiceLoader.
- Возвращает:
- независимое изменяемое множество идентификаторов доступных хронологий, не null
getId
String getId()
Идентификатор однозначно определяет Chronology. Его можно использовать для поиска Chronology с помощью of(String).
- Возвращает:
- идентификатор хронологии, не null
- См. также:
getCalendarType
String getCalendarType()
Тип календаря — это идентификатор, определенный спецификациями CLDR и языка разметки данных локали Unicode (LDML) для однозначного определения календаря. getCalendarType представляет собой конкатенацию типа календаря CLDR и варианта, если он применим; вариант добавляется через дефис «-». Тип календаря используется для поиска Chronology с помощью of(String).
- Возвращает:
- тип календарной системы; null, если календарь не определен в CLDR/LDML
- См. также:
date
default ChronoLocalDate date(Era era, int yearOfEra, int month, int dayOfMonth)
- Требования к реализации:
- Реализация по умолчанию объединяет эру и год эры в пролептический год, прежде чем вызвать
date(int, int, int). - Параметры:
-
era— эра правильного для хронологии типа, не null -
yearOfEra— год эры в этой хронологии -
month— месяц года в этой хронологии -
dayOfMonth— день месяца в этой хронологии - Возвращает:
- локальную дату в этой хронологии, не null
- Исключения:
-
DateTimeException— если не удалось создать дату -
ClassCastException— еслиeraимеет тип, не соответствующий хронологии
date
ChronoLocalDate date(int prolepticYear, int month, int dayOfMonth)
- Параметры:
-
prolepticYear— пролептический год в этой хронологии -
month— месяц года в этой хронологии -
dayOfMonth— день месяца в этой хронологии - Возвращает:
- локальную дату в этой хронологии, не null
- Исключения:
-
DateTimeException— если не удалось создать дату
dateYearDay
default ChronoLocalDate dateYearDay(Era era, int yearOfEra, int dayOfYear)
- Требования к реализации:
- Реализация по умолчанию объединяет эру и год эры в пролептический год, прежде чем вызвать
dateYearDay(int, int). - Параметры:
-
era— эра правильного для хронологии типа, не null -
yearOfEra— год эры в этой хронологии -
dayOfYear— день года в этой хронологии - Возвращает:
- локальную дату в этой хронологии, не null
- Исключения:
-
DateTimeException— если не удалось создать дату -
ClassCastException— еслиeraимеет тип, не соответствующий хронологии
dateYearDay
ChronoLocalDate dateYearDay(int prolepticYear, int dayOfYear)
- Параметры:
-
prolepticYear— пролептический год в этой хронологии -
dayOfYear— день года в этой хронологии - Возвращает:
- локальную дату в этой хронологии, не null
- Исключения:
-
DateTimeException— если не удалось создать дату
dateEpochDay
ChronoLocalDate dateEpochDay(long epochDay)
Определение EPOCH_DAY одинаково для всех календарных систем, поэтому это значение можно использовать для преобразования.
- Параметры:
-
epochDay— день эпохи - Возвращает:
- локальную дату в этой хронологии, не null
- Исключения:
-
DateTimeException— если не удалось создать дату
dateNow
default ChronoLocalDate dateNow()
Для получения текущей даты этот метод обращается к system clock в часовом поясе по умолчанию.
Использование этого метода не позволяет применять альтернативные часы для тестирования, поскольку используемые часы заданы жестко.
- Требования к реализации:
- Реализация по умолчанию вызывает
dateNow(Clock). - Возвращает:
- текущую локальную дату по системным часам и в часовом поясе по умолчанию, не null
- Исключения:
-
DateTimeException— если не удалось создать дату
dateNow
default ChronoLocalDate dateNow(ZoneId zone)
Для получения текущей даты этот метод обращается к system clock. Указание часового пояса позволяет избежать зависимости от часового пояса по умолчанию.
Использование этого метода не позволяет применять альтернативные часы для тестирования, поскольку используемые часы заданы жестко.
- Требования к реализации:
- Реализация по умолчанию вызывает
dateNow(Clock). - Параметры:
-
zone— идентификатор часового пояса, не null - Возвращает:
- текущую локальную дату по системным часам, не null
- Исключения:
-
DateTimeException— если не удалось создать дату
dateNow
default ChronoLocalDate dateNow(Clock clock)
Для получения текущей даты — сегодняшнего дня — этот метод обращается к указанным часам. Использование этого метода позволяет применять альтернативные часы для тестирования. Альтернативные часы можно задать с помощью dependency injection.
- Требования к реализации:
- Реализация по умолчанию вызывает
date(TemporalAccessor). - Параметры:
-
clock— используемые часы, не null - Возвращает:
- текущую локальную дату, не null
- Исключения:
-
DateTimeException— если не удалось создать дату
date
ChronoLocalDate date(TemporalAccessor temporal)
Этот метод получает дату в этой хронологии на основе указанного объекта времени. TemporalAccessor представляет собой произвольный набор сведений о дате и времени, который эта фабрика преобразует в экземпляр ChronoLocalDate.
Для преобразования обычно используется поле EPOCH_DAY, стандартизированное для всех календарных систем.
Сигнатура этого метода соответствует сигнатуре функционального интерфейса TemporalQuery, что позволяет использовать его в качестве запроса через ссылку на метод, aChronology::date.
- Параметры:
-
temporal— объект времени для преобразования, не null - Возвращает:
- локальную дату в этой хронологии, не null
- Исключения:
-
DateTimeException— если не удалось создать дату - См. также:
localDateTime
default ChronoLocalDateTime<? extends ChronoLocalDate> localDateTime(TemporalAccessor temporal)
Этот метод получает дату и время в этой хронологии на основе указанного объекта времени. TemporalAccessor представляет собой произвольный набор сведений о дате и времени, который эта фабрика преобразует в экземпляр ChronoLocalDateTime.
Преобразование извлекает и объединяет ChronoLocalDate и LocalTime из объекта времени. Реализациям разрешается выполнять оптимизации, например обращаться к полям, эквивалентным соответствующим объектам. Результат использует эту хронологию.
Сигнатура этого метода соответствует сигнатуре функционального интерфейса TemporalQuery, что позволяет использовать его в качестве запроса через ссылку на метод, aChronology::localDateTime.
- Параметры:
-
temporal— объект времени для преобразования, не null - Возвращает:
- локальные дату и время в этой хронологии, не null
- Исключения:
-
DateTimeException— если не удалось создать дату и время - См. также:
zonedDateTime
default ChronoZonedDateTime<? extends ChronoLocalDate> zonedDateTime(TemporalAccessor temporal)
ChronoZonedDateTime этой хронологии из другого объекта времени. Этот метод получает дату и время с часовым поясом в этой хронологии на основе указанного объекта времени. TemporalAccessor представляет собой произвольный набор сведений о дате и времени, который эта фабрика преобразует в экземпляр ChronoZonedDateTime.
Сначала преобразование получает ZoneId из объекта времени, а при необходимости — ZoneOffset. Затем оно пытается получить Instant, а при необходимости — ChronoLocalDateTime. Результатом будет либо сочетание ZoneId или ZoneOffset с Instant или ChronoLocalDateTime. Реализациям разрешается выполнять оптимизации, например обращаться к полям, эквивалентным соответствующим объектам. Результат использует эту хронологию.
Сигнатура этого метода соответствует сигнатуре функционального интерфейса TemporalQuery, что позволяет использовать его в качестве запроса через ссылку на метод, aChronology::zonedDateTime.
- Параметры:
-
temporal— объект времени для преобразования, не null - Возвращает:
- дату и время с часовым поясом в этой хронологии, не null
- Исключения:
-
DateTimeException— если не удалось создать дату и время - См. также:
zonedDateTime
default ChronoZonedDateTime<? extends ChronoLocalDate> zonedDateTime(Instant instant, ZoneId zone)
ChronoZonedDateTime этой хронологии из Instant. Этот метод получает дату и время с часовым поясом, соответствующие указанному моменту.
- Параметры:
-
instant— момент, на основе которого создается дата и время, не null -
zone— часовой пояс, не null - Возвращает:
- дату и время с часовым поясом, не null
- Исключения:
-
DateTimeException— если результат выходит за поддерживаемый диапазон
isLeapYear
boolean isLeapYear(long prolepticYear)
Високосный год длиннее обычного. Точное значение определяется хронологией с учетом следующих ограничений.
- високосный год должен быть длиннее невисокосного.
- хронология, не поддерживающая понятие года, должна возвращать false.
- для всех лет в допустимом диапазоне хронологии должен возвращаться правильный результат.
За пределами допустимого диапазона лет реализация может вернуть наиболее вероятный результат или false. Реализация не должна выбрасывать исключение, даже если год находится за пределами допустимого диапазона.
- Параметры:
-
prolepticYear— проверяемый пролептический год; допустимость значения не проверяется - Возвращает:
- true, если год високосный
prolepticYear
int prolepticYear(Era era, int yearOfEra)
Этот метод объединяет эру и год эры в одно поле пролептического года.
Если в хронологии активно используются эры, например JapaneseChronology, год эры проверяется на соответствие эре. Для других хронологий проверка необязательна.
- Параметры:
-
era— эра правильного для хронологии типа, не null -
yearOfEra— год эры в этой хронологии - Возвращает:
- пролептический год
- Исключения:
-
DateTimeException— если преобразование в пролептический год невозможно, например если год недопустим для этой эры -
ClassCastException— еслиeraимеет тип, не соответствующий хронологии
eraOf
Era eraOf(int eraValue)
Эра, концептуально, является крупнейшим подразделением временной шкалы. В большинстве календарных систем есть одна эпоха, разделяющая временную шкалу на две эры. Однако в некоторых календарных системах эр несколько, например по одной на период правления каждого руководителя. Точное значение определяется хронологией с учетом следующих ограничений.
Эра, действовавшая на 1970-01-01, должна иметь значение 1. Последующие эры должны иметь последовательно возрастающие значения. Предшествующие эры должны иметь последовательно убывающие значения. Для представления значений эр каждая хронология должна использовать перечисление или аналогичный объект-одиночку.
Этот метод возвращает объект-одиночку эры правильного типа для указанного значения эры.
- Параметры:
-
eraValue— значение эры - Возвращает:
- эра календарной системы, не null
- Исключения:
-
DateTimeException— если не удалось создать эру
eras
List<Era> eras()
В большинстве календарных систем есть эра, в пределах которой имеет значение год. Если календарная система не поддерживает понятие эр, необходимо вернуть пустой список.
- Возвращает:
- список эр хронологии; может быть неизменяемым, не null
range
ValueRange range(ChronoField field)
Все поля можно представить в виде целого числа типа long. Этот метод возвращает объект, описывающий допустимый диапазон для такого значения.
Обратите внимание, что результат описывает только минимальные и максимальные допустимые значения; не следует делать на их основании чрезмерных выводов. Например, некоторые значения внутри диапазона могут быть недопустимыми для этого поля.
Этот метод возвращает результат независимо от того, поддерживает ли хронология это поле.
- Параметры:
-
field— поле, диапазон которого требуется получить, не null - Возвращает:
- диапазон допустимых значений поля, не null
- Исключения:
-
DateTimeException— если не удалось получить диапазон поля
getDisplayName
default String getDisplayName(TextStyle style, Locale locale)
Этот метод возвращает текстовое название, используемое для идентификации хронологии и предназначенное для отображения пользователю. Параметры задают стиль возвращаемого текста и локаль.
- Требования к реализации:
- Реализация по умолчанию действует так, как если бы для форматирования текстового названия хронологии использовался форматтер.
- Параметры:
-
style— требуемый стиль текста, не null -
locale— используемая локаль, не null - Возвращает:
- текстовое название хронологии, не null
resolveDate
ChronoLocalDate resolveDate(Map<TemporalField, Long> fieldValues, ResolverStyle resolverStyle)
ChronoField в дату во время разбора. Большинство реализаций TemporalField разрешаются с помощью метода resolve поля. В отличие от них, класс ChronoField определяет поля, смысл которых зависит от хронологии. Поэтому здесь разрешаются поля даты ChronoField в контексте конкретной хронологии.
Реализация по умолчанию, описывающая типичное поведение разрешения, предоставлена в AbstractChronology.
- Параметры:
-
fieldValues— карта полей и значений, которую можно обновлять, не null -
resolverStyle— запрошенный тип разрешения, не null - Возвращает:
- разрешенную дату; null, если информации недостаточно для создания даты
- Исключения:
-
DateTimeException— если дату не удалось разрешить, обычно из-за конфликта во входных данных
period
default ChronoPeriod period(int years, int months, int days)
Этот метод возвращает период, связанный с этой хронологией и заданный указанным количеством лет, месяцев и дней. Во всех поставляемых хронологиях используются периоды, основанные на годах, месяцах и днях, однако API ChronoPeriod позволяет представлять период с помощью других единиц.
- Требования к реализации:
- Реализация по умолчанию возвращает класс реализации, подходящий для большинства календарных систем. Он основан только на трех единицах. Нормализация, сложение и вычитание определяют количество месяцев в году по
range(ChronoField). Если количество месяцев в году фиксировано, подход к вычислению при сложении, вычитании и нормализации немного отличается.При реализации необычной календарной системы, не основанной на годах, месяцах и днях, или если требуется полный контроль, необходимо напрямую реализовать интерфейс
ChronoPeriod.Возвращаемый период неизменяем и потокобезопасен.
- Параметры:
-
years— количество лет; может быть отрицательным -
months— количество лет; может быть отрицательным -
days— количество лет; может быть отрицательным - Возвращает:
- период в единицах этой хронологии, не null
epochSecond
default long epochSecond(int prolepticYear, int month, int dayOfMonth, int hour, int minute, int second, ZoneOffset zoneOffset)
Количество секунд вычисляется на основе пролептического года, месяца, дня месяца, часа, минуты, секунды и смещения часового пояса.
- Параметры:
-
prolepticYear— пролептический год в этой хронологии -
month— месяц года в этой хронологии -
dayOfMonth— день месяца в этой хронологии -
hour— час дня, от 0 до 23 -
minute— минута часа, от 0 до 59 -
second— секунда минуты, от 0 до 59 -
zoneOffset— смещение часового пояса, не null - Возвращает:
- количество секунд относительно 1970-01-01T00:00:00Z; может быть отрицательным
- Исключения:
-
DateTimeException— если какое-либо значение выходит за допустимый диапазон - С версии:
- 9
epochSecond
default long epochSecond(Era era, int yearOfEra, int month, int dayOfMonth, int hour, int minute, int second, ZoneOffset zoneOffset)
Количество секунд вычисляется на основе эры, года эры, месяца, дня месяца, часа, минуты, секунды и смещения часового пояса.
- Параметры:
-
era— эра правильного для хронологии типа, не null -
yearOfEra— год эры в этой хронологии -
month— месяц года в этой хронологии -
dayOfMonth— день месяца в этой хронологии -
hour— час дня, от 0 до 23 -
minute— минута часа, от 0 до 59 -
second— секунда минуты, от 0 до 59 -
zoneOffset— смещение часового пояса, не null - Возвращает:
- количество секунд относительно 1970-01-01T00:00:00Z; может быть отрицательным
- Исключения:
-
DateTimeException— если какое-либо значение выходит за допустимый диапазон - С версии:
- 9
isIsoBased
default boolean isIsoBased()
Система летоисчисления, основанная на ISO, имеет ту же базовую структуру, что и ISO chronology, то есть в ней такое же количество месяцев, такое же количество дней в каждом месяце, а день года и високосные годы совпадают с ISO-системой летоисчисления. Она также поддерживает понятие года в недельном формате ISO-системы летоисчисления. Например, системы летоисчисления Minguo, ThaiThaiBuddhist и Japanese основаны на ISO.
- Требования к реализации:
- Реализация по умолчанию возвращает
false. - Возвращает:
-
true, только если эта система летоисчисления поддерживает все поля изIsoFields. В противном случае возвращаетfalse. - См. также:
compareTo
int compareTo(Chronology other)
Порядок сравнения определяется сначала строкой идентификатора системы летоисчисления, а затем любой дополнительной информацией, специфичной для подкласса. Результат «согласован с equals» в соответствии с определением Comparable.
- Определено в:
-
compareToв интерфейсеComparable<Chronology> - Параметры:
-
other- другая система летоисчисления для сравнения, не null - Возвращает:
- значение сравнения: результат сравнения строки идентификатора этой системы летоисчисления со строкой идентификатора системы летоисчисления
other, если строки идентификаторов не равны; если же строки идентификаторов равны, учитывается дополнительная информация, с помощью которой система летоисчисления различает экземпляры
equals
boolean equals(Object obj)
Сравнение выполняется на основе полного состояния объекта.
hashCode
toString
© 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://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/time/chrono/Chronology.html