Интерфейс 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. В общем случае рекомендуется использовать известную систему ISO-основанную LocalDate, а не 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. Для поиска по идентификатору или типу календаря сначала находятся предоставленные системой календари, а затем — предоставленные приложением.
Каждая хронология должна определить идентификатор хронологии, уникальный в системе. Если хронология представляет систему календаря, определенную спецификацией CLDR, то тип календаря — это конкатенация типа CLDR и, при необходимости, варианта CLDR.
- Требования к реализации:
- Этот интерфейс должен быть реализован с осторожностью, чтобы обеспечить правильную работу других классов. Все реализуемые классы, которые могут быть созданы, должны быть final, неизменяемыми и потокобезопасными. Подклассы должны быть Serializable, где это возможно.
- С момента:
- 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 из локали. Это возвращает хронологию, основанную на указанной локали, обычно возвращая 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 Locale Data Markup Language (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- если эра не соответствует типу хронологии
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- если эра не соответствует типу хронологии
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 разрешаются здесь в контексте конкретной хронологии.
Стандартная реализация, которая объясняет типичное поведение resolve, представлена в 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. - С:
- 19
- См. также:
compareTo
int compareTo(Chronology other)
Порядок сравнения сначала по строке идентификатора хронологии, а затем по любой дополнительной информации, специфичной для подкласса. Он «согласован с equals», как определено в Comparable.
- Определено в:
-
compareToв интерфейсеComparable<Chronology> - Параметры:
-
other- другая хронология для сравнения, не null - Возвращает:
- значение сравнения, т.е. эта строка идентификатора, сравненная со строкой идентификатора
other, если строки идентификаторов равны, и хронология различает экземпляры с помощью дополнительной информации
equals
boolean equals(Object obj)
Сравнение основано на полном состоянии объекта.
- Переопределяет:
-
equalsв классеObject - Параметры:
-
obj- объект для проверки, null возвращает false - Возвращает:
- true, если эта хронология равна другой хронологии
- См. также:
hashCode
int hashCode()
Хеш-код должен быть основан на полном состоянии объекта.
- Переопределяет:
-
hashCodeв классеObject - Возвращает:
- подходящий хеш-код
- См. также:
toString
String toString()
String. Формат должен включать все состояние объекта.
- Переопределяет:
-
toStringв классеObject - Возвращает:
- строковое представление этой хронологии, не null
© 1993, 2023, 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/21/docs/api/java.base/java/time/chrono/Chronology.html