Spec-Zone .ru
спецификации, руководства, описания, API
|
public final class HijrahChronology extends Chronology implements Serializable
HijrahChronology следует за правилами календарной системы Hijrah. У календаря Hijrah есть несколько разновидностей, основанных на различиях в том, когда новолуние решается произойти и где наблюдение делается. В некоторых разновидностях продолжительность каждого месяца вычисляется алгоритмически от астрономических данных для луны и земли, и в других продолжительность месяца определяется авторизованным наблюдением новолуния. Для алгоритмически основанных календарей календарь может спроектировать в будущее. Для того, чтобы увидеть базируемые календари только исторические данные от прошлых наблюдений доступны.
Продолжительность каждого месяца составляет 29 или 30 дней. У обычных лет есть 354 дня; у високосных годов есть 355 дней.
CLDR и LDML идентифицируют разновидности:
ID хронологии | Тип календаря | Расширение локали, см. Locale |
Описание |
---|---|---|---|
Hijrah-umalqura | исламский-umalqura | ca-islamic-cv-umalqura | Исламский - календарь Умма Аль-Куры Саудовской Аравии |
Дополнительные разновидности могут быть доступными через Chronology.getAvailableChronologies()
.
Пример
Выбор хронологии от использования локали Chronology.ofLocale(java.util.Locale)
счесть Хронологию основанной на Локали поддерживаемый BCP 47 механизмов расширения, чтобы запросить определенный календарь ("приблизительно") и разновидность ("условная цена"). Например,
Locale locale = Locale.forLanguageTag("en-US-u-ca-islamic-cv-umalqura"); Chronology chrono = Chronology.ofLocale(locale);
ID
, calendar type
, запуск календаря, выравнивания с календарем ISO, и продолжительности каждого месяца для диапазона лет. Разновидности идентифицируются в calendars.properties
файл. Новые свойства снабжаются префиксом "calendars.hijrah."
: Имя свойства | Значение свойства | Описание |
---|---|---|
calendars.hijrah. {ID} | Ресурс свойства, определяющий {ID} разновидность |
Ресурс свойства располагается с calendars.properties файл |
calendars.hijrah. {ID}.type | Тип календаря | LDML определяет имена типа календаря |
Ресурс свойства Hijrah является рядом свойств, которые описывают календарь. Синтаксис определяется java.util.Properties#load(Reader)
.
Имя свойства | Значение свойства | Описание |
---|---|---|
идентификатор | Идентификатор хронологии, например, "Hijrah-umalqura" | Идентификатор календаря в общем пользовании |
ввести | Тип календаря, например, "исламский-umalqura" | LDML определяет типы календаря |
версия | Версия, например: "1.8.0_1" | Версия данных разновидности Hijrah |
запустить международная организация по стандартизации | Дата начала ISO, отформатированная как yyyy-MM-dd , например: "1900-04-30" |
Дата ISO первого дня минимального года Hijrah. |
yyyy - числовые 4 года цифры, например "1434" | Значение является последовательностью 12-месячных длин, например: "29 30 29 30 29 30 30 30 29 30 29 29" | Продолжительности 12 месяцев года отделились пробелом. Числовое свойство года должно присутствовать в течение каждого года без любых разрывов. Длины месяца должны быть между 29-32 включительно. |
Модификатор и Тип | Поле и Описание |
---|---|
static HijrahChronology |
ЭКЗЕМПЛЯР
Экземпляр Singleton исламского календаря Умма Аль-Куры Саудовской Аравии.
|
Модификатор и Тип | Метод и Описание |
---|---|
HijrahDate |
date(Era era, int yearOfEra, int month, int dayOfMonth)
Получает локальную дату в календарной системе Hijrah с эры, года эры, месяца-летнего и дневных-месячного полей.
|
HijrahDate |
date(int prolepticYear, int month, int dayOfMonth)
Получает локальную дату в календарной системе Hijrah от преждевременно-летнего, месяц-летнего и дневные-месячного поля.
|
HijrahDate |
date(TemporalAccessor temporal)
Получает локальную дату в этой хронологии от другого временного объекта.
|
HijrahDate |
dateEpochDay(long epochDay)
Получает локальную дату в календарной системе Hijrah от дневного эпохой.
|
HijrahDate |
dateNow()
Получает текущую локальную дату в этой хронологии от системных часов в часовом поясе значения по умолчанию.
|
HijrahDate |
dateNow(Clock clock)
Получает текущую локальную дату в этой хронологии от указанных часов.
|
HijrahDate |
dateNow(ZoneId zone)
Получает текущую локальную дату в этой хронологии от системных часов в указанном часовом поясе.
|
HijrahDate |
dateYearDay(Era era, int yearOfEra, int dayOfYear)
Получает локальную дату в календарной системе Hijrah с эры, года эры и дневных-летнего полей.
|
HijrahDate |
dateYearDay(int prolepticYear, int dayOfYear)
Получает локальную дату в календарной системе Hijrah от преждевременно-летних полей и дневных-летнего полей.
|
Эра |
eraOf(int eraValue)
Создает объект эры хронологии из числового значения.
|
List<Era> |
eras()
Получает список эр для хронологии.
|
Строка |
getCalendarType()
Получает тип календаря исламского календаря.
|
Строка |
getId()
Получает ID хронологии.
|
boolean |
isLeapYear(long prolepticYear)
Проверки, если указанный год является високосным годом.
|
ChronoLocalDateTime<HijrahDate> |
localDateTime(TemporalAccessor temporal)
Получает локальную переменную, разовую датой в этой хронологии от другого временного объекта.
|
int |
prolepticYear(Era era, int yearOfEra)
Вычисляет преждевременно-летнее, данное эру и год эры.
|
ValueRange |
range(ChronoField field)
Получает диапазон допустимых значений для указанного поля.
|
ChronoZonedDateTime<HijrahDate> |
zonedDateTime(Instant instant, ZoneId zone)
Получает a
ChronoZonedDateTime в этой хронологии от Instant . |
ChronoZonedDateTime<HijrahDate> |
zonedDateTime(TemporalAccessor temporal)
Получает a
ChronoZonedDateTime в этой хронологии от другого временного объекта. |
compareTo, equals, from, getAvailableChronologies, getDisplayName, hashCode, of, ofLocale, resolveDate, toString, writeReplace
public static final HijrahChronology INSTANCE
Chronology.getAvailableChronologies()
.public String getId()
ID однозначно определяет Chronology
. Это может привыкнуть к поиску Chronology
использование Chronology.of(String)
.
getId
в class Chronology
getCalendarType()
public String getCalendarType()
Тип календаря является идентификатором, определенным Языком разметки Данных Локали Unicode (LDML) спецификация. Это может привыкнуть к поиску Chronology
использование Chronology.of(String)
.
getCalendarType
в class Chronology
getId()
public HijrahDate date(Era era, int yearOfEra, int month, int dayOfMonth)
date
в class Chronology
era
- эра Hijrah, не нульyearOfEra
- год эрыmonth
- месяц-летнегоdayOfMonth
- день-месячногоDateTimeException
- если неспособный создать датуClassCastException
- если era
не a HijrahEra
public HijrahDate date(int prolepticYear, int month, int dayOfMonth)
date
в class Chronology
prolepticYear
- преждевременно-летнееmonth
- месяц-летнегоdayOfMonth
- день-месячногоDateTimeException
- если неспособный создать датуpublic HijrahDate dateYearDay(Era era, int yearOfEra, int dayOfYear)
dateYearDay
в class Chronology
era
- эра Hijrah, не нульyearOfEra
- год эрыdayOfYear
- день-летнегоDateTimeException
- если неспособный создать датуClassCastException
- если era
не a HijrahEra
public HijrahDate dateYearDay(int prolepticYear, int dayOfYear)
dateYearDay
в class Chronology
prolepticYear
- преждевременно-летнееdayOfYear
- день-летнегоDateTimeException
- если неспособный создать датуpublic HijrahDate dateEpochDay(long epochDay)
dateEpochDay
в class Chronology
epochDay
- день эпохиDateTimeException
- если неспособный создать датуpublic HijrahDate dateNow()
Chronology
Это запросит system clock
в часовом поясе значения по умолчанию, чтобы получить текущую дату.
Используя этот метод предотвратит возможность использовать альтернативные часы для того, чтобы протестировать, потому что часы трудно кодируются.
Эта реализация использование Chronology.dateNow(Clock)
.
dateNow
в class Chronology
public HijrahDate dateNow(ZoneId zone)
Chronology
Это запросит system clock
получить текущую дату. Определение часового пояса избегает зависимости от часового пояса значения по умолчанию.
Используя этот метод предотвратит возможность использовать альтернативные часы для того, чтобы протестировать, потому что часы трудно кодируются.
dateNow
в class Chronology
zone
- зональный ID, чтобы использовать, не нульpublic HijrahDate dateNow(Clock clock)
Chronology
Это запросит указанные часы, чтобы получить текущую дату - сегодня. Используя этот метод позволяет использование альтернативных часов для того, чтобы протестировать. Альтернативные часы могут быть представлены, используя dependency injection
.
dateNow
в class Chronology
clock
- часы, чтобы использовать, не нульpublic HijrahDate date(TemporalAccessor temporal)
Chronology
Это получает дату в этой хронологии, основанной на указанном временном. A TemporalAccessor
представляет произвольный набор даты и информации времени, из которой эта фабрика преобразовывает в экземпляр ChronoLocalDate
.
Преобразование обычно использует EPOCH_DAY
поле, которое стандартизируется через календарные системы.
Этот метод соответствует подпись функционального интерфейса TemporalQuery
разрешение этого использоваться в качестве запроса через ссылку метода, aChronology::date
.
date
в class Chronology
temporal
- временный объект преобразовать, не нульChronoLocalDate.from(TemporalAccessor)
public ChronoLocalDateTime<HijrahDate> localDateTime(TemporalAccessor temporal)
Chronology
Это получает разовое датой в этой хронологии, основанной на указанном временном. A TemporalAccessor
представляет произвольный набор даты и информации времени, из которой эта фабрика преобразовывает в экземпляр ChronoLocalDateTime
.
Преобразование извлекает и объединяется ChronoLocalDate
и LocalTime
от временного объекта. Реализациям разрешают выполнить оптимизацию, такую как доступ к тем полям, которые эквивалентны соответствующим объектам. Результат использует эту хронологию.
Этот метод соответствует подпись функционального интерфейса TemporalQuery
разрешение этого использоваться в качестве запроса через ссылку метода, aChronology::localDateTime
.
localDateTime
в class Chronology
temporal
- временный объект преобразовать, не нульChronoLocalDateTime.from(TemporalAccessor)
public ChronoZonedDateTime<HijrahDate> zonedDateTime(TemporalAccessor temporal)
Chronology
ChronoZonedDateTime
в этой хронологии от другого временного объекта. Это получает зонное разовое датой в этой хронологии, основанной на указанном временном. A TemporalAccessor
представляет произвольный набор даты и информации времени, из которой эта фабрика преобразовывает в экземпляр ChronoZonedDateTime
.
Преобразование сначала получит a ZoneId
от временного объекта, отступая к a ZoneOffset
в случае необходимости. Это тогда попытается получить Instant
, отступание к a ChronoLocalDateTime
в случае необходимости. Результатом будет любой комбинация ZoneId
или ZoneOffset
с Instant
или ChronoLocalDateTime
. Реализациям разрешают выполнить оптимизацию, такую как доступ к тем полям, которые эквивалентны соответствующим объектам. Результат использует эту хронологию.
Этот метод соответствует подпись функционального интерфейса TemporalQuery
разрешение этого использоваться в качестве запроса через ссылку метода, aChronology::zonedDateTime
.
zonedDateTime
в class Chronology
temporal
- временный объект преобразовать, не нульChronoZonedDateTime.from(TemporalAccessor)
public ChronoZonedDateTime<HijrahDate> zonedDateTime(Instant instant, ZoneId zone)
Chronology
ChronoZonedDateTime
в этой хронологии от Instant
. Это получает зонное разовое датой с тем же самым моментом, как это определило.
zonedDateTime
в class Chronology
instant
- момент, чтобы создать разовое датой из, не нульzone
- часовой пояс, не нульpublic boolean isLeapYear(long prolepticYear)
Chronology
Високосный год является годом более длительной длины чем нормальный. Точное значение определяется хронологией согласно следующим ограничениям.
isLeapYear
в class Chronology
prolepticYear
- преждевременно-летнее, чтобы проверить, не проверил для диапазонаpublic int prolepticYear(Era era, int yearOfEra)
Chronology
Это комбинирует эру и год эры в единственное преждевременно-летнее поле.
Если хронология делает активное использование эр, такой как JapaneseChronology
тогда год эры будет проверен против эры. Для других хронологий проверка допустимости является дополнительной.
prolepticYear
в class Chronology
era
- эра корректного типа для хронологии, не нульyearOfEra
- год эры хронологииpublic Era eraOf(int eraValue)
Chronology
Эра является, концептуально, крупнейшим подразделением временной шкалы. У большинства календарных систем есть единственная эпоха, делящая временную шкалу на две эры. Однако, у некоторых есть многократные эры, такой как один для господства каждого лидера. Точное значение определяется хронологией согласно следующим ограничениям.
У эры в использовании 01.01.1970 должно быть значение 1. У более поздних эр должны быть последовательно более высокие значения. У более ранних эр должны быть последовательно нижние значения. Каждая хронология должна обратиться к перечислимому или подобному одиночному элементу, чтобы обеспечить значения эры.
Этот метод возвращает одноэлементную эру корректного типа для указанного значения эры.
eraOf
в class Chronology
eraValue
- значение эрыpublic List<Era> eras()
Chronology
У большинства календарных систем есть эра, в пределах которой у года есть значение. Если календарная система не поддерживает понятие эр, пустой список должен быть возвращен.
eras
в class Chronology
public ValueRange range(ChronoField field)
Chronology
Все поля могут быть выражены как a long
целое число. Этот метод возвращает объект, который описывает допустимый диапазон для того значения.
Отметьте, что результат только описывает минимальные и максимальные допустимые значения, и важно не читать слишком много в них. Например, могли быть значения в пределах диапазона, которые недопустимы для поля.
Этот метод возвратит результат, поддерживает ли хронология поле.
range
в class Chronology
field
- поле, чтобы получить диапазон для, не нуль
Для дальнейшей ссылки API и документации разработчика, см. Java Документация SE. Та документация содержит более подробные, предназначенные разработчиком описания, с концептуальными краткими обзорами, определениями сроков, обходных решений, и рабочих примеров кода.
Авторское право © 1993, 2013, Oracle и/или его филиалы. Все права защищены.
Проект сборка-b92