Spec-Zone.ru › OpenJDK 27

Класс JulianFields

java.lang.Object
java.time.temporal.JulianFields
public final class JulianFields extends Object
Набор полей даты, предоставляющих доступ к юлианским дням.

Юлианский день — это стандартный способ представления даты и времени, широко используемый в научном сообществе. Он выражается десятичным числом целых дней, отсчёт которых начинается в полдень. Этот класс представляет варианты юлианских дней, в которых целые дни отсчитываются от полуночи.

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

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

Краткое описание полей

Модификатор и тип Поле Описание
static final TemporalField JULIAN_DAY
Поле юлианского дня.
static final TemporalField MODIFIED_JULIAN_DAY
Поле модифицированного юлианского дня.
static final TemporalField RATA_DIE
Поле Rata Die.

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

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, равен ли другой объект этому объекту.
protected void finalize()
Устарело, запланировано к удалению: этот элемент API может быть удалён в будущей версии.
Финализация объявлена устаревшей и может быть удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt.
final void wait(long timeoutMillis)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Заставляет текущий поток ожидать пробуждения, обычно в результате вызова notify или interrupt, либо до истечения заданного промежутка реального времени.

Подробное описание полей

JULIAN_DAY

public static final TemporalField JULIAN_DAY
Поле юлианского дня.

Это целочисленная версия номера юлианского дня. Юлианский день — известная система, представляющая количество целых дней с дня 0, которым считается 1 января 4713 года до н. э. по юлианскому календарю и -4713-11-24 по григорианскому календарю. Поле имеет имя «JulianDay» и базовую единицу «DAYS». Поле всегда относится к местной дате и времени, игнорируя смещение или часовой пояс.

Для даты и времени 'JULIAN_DAY.getFrom()' предполагает одно и то же значение от полуночи до момента непосредственно перед следующей полуночью. При применении 'JULIAN_DAY.adjustInto()' к дате и времени часть, относящаяся ко времени суток, остаётся неизменной. 'JULIAN_DAY.adjustInto()' и 'JULIAN_DAY.getFrom()' применимы только к объектам Temporal, которые можно преобразовать в ChronoField.EPOCH_DAY. Для объектов любого другого типа выбрасывается исключение UnsupportedTemporalTypeException.

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

Астрономические и научные примечания

В стандартном астрономическом определении для указания времени суток используется дробная часть, а каждый день отсчитывается от полудня до полудня. Например, дробная часть 0 соответствует полудню, 0.25 — 18:00, 0.5 — полуночи, а 0.75 — 06:00.

В отличие от этого, данная реализация не использует дробную часть и отсчитывает дни от полуночи до полуночи. В этой реализации используется целое число, а начало дня приходится на полночь. Целочисленное значение номера юлианского дня соответствует астрономическому значению юлианского дня в полдень рассматриваемой даты. Это эквивалентно астрономическому юлианскому дню, округлённому до целого JDN = floor(JD + 0.5).

 | ISO date          |  Julian Day Number | Astronomical Julian Day |
 | 1970-01-01T00:00  |         2,440,588  |         2,440,587.5     |
 | 1970-01-01T06:00  |         2,440,588  |         2,440,587.75    |
 | 1970-01-01T12:00  |         2,440,588  |         2,440,588.0     |
 | 1970-01-01T18:00  |         2,440,588  |         2,440,588.25    |
 | 1970-01-02T00:00  |         2,440,589  |         2,440,588.5     |
 | 1970-01-02T06:00  |         2,440,589  |         2,440,588.75    |
 | 1970-01-02T12:00  |         2,440,589  |         2,440,589.0     |

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

MODIFIED_JULIAN_DAY

public static final TemporalField MODIFIED_JULIAN_DAY
Поле модифицированного юлианского дня.

Это целочисленная версия номера модифицированного юлианского дня. Модифицированный юлианский день (MJD) — известная система непрерывного отсчёта дней. Он определяется относительно астрономического юлианского дня как MJD = JD - 2400000.5. Каждый модифицированный юлианский день длится от полуночи до полуночи. Поле всегда относится к местной дате и времени, игнорируя смещение или часовой пояс.

Для даты и времени 'MODIFIED_JULIAN_DAY.getFrom()' предполагает одно и то же значение от полуночи до момента непосредственно перед следующей полуночью. При применении 'MODIFIED_JULIAN_DAY.adjustInto()' к дате и времени часть, относящаяся ко времени суток, остаётся неизменной. 'MODIFIED_JULIAN_DAY.adjustInto()' и 'MODIFIED_JULIAN_DAY.getFrom()' применимы только к объектам Temporal, которые можно преобразовать в ChronoField.EPOCH_DAY. Для объектов любого другого типа выбрасывается исключение UnsupportedTemporalTypeException.

Эта реализация представляет собой целочисленную версию MJD, в которой десятичная часть округляется вниз.

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

Астрономические и научные примечания

 | ISO date          | Modified Julian Day |      Decimal MJD |
 | 1970-01-01T00:00  |             40,587  |       40,587.0   |
 | 1970-01-01T06:00  |             40,587  |       40,587.25  |
 | 1970-01-01T12:00  |             40,587  |       40,587.5   |
 | 1970-01-01T18:00  |             40,587  |       40,587.75  |
 | 1970-01-02T00:00  |             40,588  |       40,588.0   |
 | 1970-01-02T06:00  |             40,588  |       40,588.25  |
 | 1970-01-02T12:00  |             40,588  |       40,588.5   |
Модифицированные юлианские дни иногда подразумевают всемирное время или UTC, однако эта реализация всегда использует модифицированный юлианский день для местной даты, независимо от смещения или часового пояса.

RATA_DIE

public static final TemporalField RATA_DIE
Поле Rata Die.

Rata Die непрерывно отсчитывает целые дни, начиная с дня 1, который начинается в полночь 0001-01-01 (ISO). Поле всегда относится к местной дате и времени, игнорируя смещение или часовой пояс.

Для даты и времени 'RATA_DIE.getFrom()' предполагает одно и то же значение от полуночи до момента непосредственно перед следующей полуночью. При применении 'RATA_DIE.adjustInto()' к дате и времени часть, относящаяся ко времени суток, остаётся неизменной. 'RATA_DIE.adjustInto()' и 'RATA_DIE.getFrom()' применимы только к объектам Temporal, которые можно преобразовать в ChronoField.EPOCH_DAY. Для объектов любого другого типа выбрасывается исключение UnsupportedTemporalTypeException.

На этапе разрешения при разборе из поля Rata Die можно создать дату. В строгом режиме и интеллектуальном режиме значение Rata Die проверяется на соответствие диапазону допустимых значений. В нестрогом режиме проверка не выполняется.

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в разделе Документация Java SE, содержащем более подробные описания для разработчиков, обзоры основных понятий, определения терминов, обходные решения и примеры работающего кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

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