Интерфейс Эра

Все суперинтерфейсы:
TemporalAccessor, TemporalAdjuster
Все известные реализующие классы:
HijrahEra, IsoEra, JapaneseEra, MinguoEra, ThaiBuddhistEra
public interface Era
extends TemporalAccessor, TemporalAdjuster

Эра на временной шкале.

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

Например, тайский буддийский календарь делит время на две эры, до и после одной даты. В то же время, японская календарная система имеет одну эру для правления каждого императора.

Экземпляры Era могут быть сравнены с помощью оператора ==.

Требования к реализации:
Этот интерфейс должен быть реализован с осторожностью, чтобы обеспечить корректную работу других классов. Все реализации должны быть синглтонами - окончательными, неизменяемыми и потокобезопасными. Рекомендуется использовать перечисление (enum) всякий раз, когда это возможно.
С:
1.8

Методы

Модификатор и тип Метод Описание
default Temporal adjustInto​(Temporal temporal)

Настраивает указанный временной объект для соответствия эре этого объекта.

default int get​(TemporalField field)

Получает значение указанного поля из этой эры в виде int.

default String getDisplayName​(TextStyle style, Locale locale)

Получает текстовое представление этой эры.

default long getLong​(TemporalField field)

Получает значение указанного поля из этой эры в виде long.

int getValue()

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

default boolean isSupported​(TemporalField field)

Проверяет, поддерживается ли указанное поле.

default <R> R query​(TemporalQuery<R> query)

Запрашивает эту эру с использованием указанного запроса.

default ValueRange range​(TemporalField field)

Получает диапазон допустимых значений для указанного поля.

Методы

getValue

int getValue()

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

Все поля, включая эры, имеют связанное числовое значение. Значение числового значения для эры определяется хронологией в соответствии со следующими принципами:

  • Эра, используемая в эпоху 1970-01-01 (ISO), имеет значение 1.
  • Более поздние эры имеют последовательно более высокие значения.
  • Более ранние эры имеют последовательно более низкие значения, которые могут быть отрицательными.
Возвращает:
числовое значение эры

isSupported

default boolean isSupported(TemporalField field)

Проверяет, поддерживается ли указанное поле.

Это проверяет, может ли эта эра быть запрошена для указанного поля. Если false, то вызов методов range и get выбросит исключение.

Если поле является ChronoField, то запрос реализуется здесь. Поле ERA возвращает true. Все другие экземпляры ChronoField вернут false.

Если поле не является ChronoField, то результат этого метода получается путём вызова TemporalField.isSupportedBy(TemporalAccessor) с this в качестве аргумента. Поддерживается ли поле, определяется полем.

Определено в:
isSupported в интерфейсе TemporalAccessor
Параметры:
field - поле для проверки, null возвращает false
Возвращает:
true, если поле поддерживается в этой эре, false, если нет

range

default ValueRange range(TemporalField field)

Получает диапазон допустимых значений для указанного поля.

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

Если поле является ChronoField, то запрос реализуется здесь. Поле ERA возвращает диапазон. Все другие экземпляры ChronoField выбросят исключение UnsupportedTemporalTypeException.

Если поле не является ChronoField, то результат этого метода получается вызовом TemporalField.rangeRefinedBy(TemporalAccessor) с this в качестве аргумента. Возможно ли получить диапазон, определяется полем.

Реализация по умолчанию должна вернуть диапазон для ERA от нуля до одного, подходящий для двух календарных систем эры, таких как ISO.

Определено в:
range в интерфейсе TemporalAccessor
Параметры:
field - поле, для которого нужно получить диапазон, не null
Возвращает:
диапазон допустимых значений для поля, не null
Исключения:
DateTimeException - если диапазон для поля получить невозможно
UnsupportedTemporalTypeException - если единица не поддерживается

get

default int get(TemporalField field)

Получает значение указанного поля из этой эры как int.

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

Если поле является ChronoField, то запрос реализуется здесь. Поле ERA возвращает значение эры. Все другие экземпляры ChronoField выбросят исключение UnsupportedTemporalTypeException.

Если поле не является ChronoField, то результат этого метода получается путём вызова TemporalField.getFrom(TemporalAccessor) с this в качестве аргумента. Возможно ли получить значение, и что оно представляет, определяется полем.

Определено в:
get в интерфейсе TemporalAccessor
Параметры:
field - поле для получения, не null
Возвращает:
значение для поля
Исключения:
DateTimeException - если значение для поля получить невозможно или значение находится за пределами диапазона допустимых значений для поля
UnsupportedTemporalTypeException - если поле не поддерживается или диапазон значений превышает int
ArithmeticException - если произошел переполнение числовых данных

getLong

default long getLong(TemporalField field)

Получает значение указанного поля из этой эры как long.

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

Если поле является ChronoField, то запрос реализуется здесь. Поле ERA возвращает значение эры. Все другие экземпляры ChronoField выбросят исключение UnsupportedTemporalTypeException.

Если поле не является ChronoField, то результат этого метода получается путём вызова TemporalField.getFrom(TemporalAccessor) с this в качестве аргумента. Возможно ли получить значение, и что оно представляет, определяется полем.

Определено в:
getLong в интерфейсе TemporalAccessor
Параметры:
field - поле для получения, не null
Возвращает:
значение для поля
Исключения:
DateTimeException - если значение для поля получить невозможно
UnsupportedTemporalTypeException - если поле не поддерживается
ArithmeticException - если произошел переполнение числовых данных

query

default <R> R query(TemporalQuery<R> query)

Запрашивает эту эру с помощью указанного запроса.

Это запрос этой эры с помощью указанного объекта стратегии запроса. Объект TemporalQuery определяет логику, которая должна быть использована для получения результата. Прочитайте документацию запроса, чтобы понять, каким будет результат этого метода.

Результат этого метода получается путём вызова метода TemporalQuery.queryFrom(TemporalAccessor) на указанном запросе с this в качестве аргумента.

Определено в:
query в интерфейсе TemporalAccessor
Типы параметров:
R - тип результата
Параметры:
query - запрос для вызова, не null
Возвращает:
результат запроса, может быть null (определяется запросом)
Исключения:
DateTimeException - если запрос выполнить невозможно (определяется запросом)
ArithmeticException - если произошел переполнение числовых данных (определяется запросом)

adjustInto

default Temporal adjustInto(Temporal temporal)

Корректирует указанный временной объект, чтобы у него была та же эра, что и у этого объекта.

Это возвращает временной объект того же наблюдаемого типа, что и входной, с изменённой эрой, чтобы она была такой же, как у этого.

Корректировка эквивалентна использованию Temporal.with(TemporalField, long) с передачей ChronoField.ERA в качестве поля.

В большинстве случаев, обратный порядок вызова яснее с использованием Temporal.with(TemporalAdjuster):

// these two lines are equivalent, but the second approach is recommended
   temporal = thisEra.adjustInto(temporal);
   temporal = temporal.with(thisEra);

Этот экземпляр неизменяемый и не затронут этим вызовом метода.

Определено в:
adjustInto в интерфейсе TemporalAdjuster
Параметры:
temporal - целевой объект для корректировки, не null
Возвращает:
скорректированный объект, не null
Исключения:
DateTimeException - если корректировку выполнить невозможно
ArithmeticException - если произошел переполнение числовых данных

getDisplayName

default String getDisplayName(TextStyle style,
                              Locale locale)

Получает текстовое представление этой эры.

Это возвращает текстовое имя, используемое для идентификации эры, подходящее для представления пользователю. Параметры управляют стилем возвращаемого текста и локалью.

Если текстовое отображение не найдено, то возвращается numeric value.

Примечание API:
Эта реализация по умолчанию подходит для большинства реализаций.
Параметры:
style - требуемый стиль текста, не null
locale - используемая локаль, не null
Возвращает:
текстовое значение эры, не 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/chrono/Era.html

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