Класс 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. |
Краткое описание методов
Подробное описание полей
JULIAN_DAY
public static final TemporalField JULIAN_DAY
Это целочисленная версия номера дня Джулиана. День Джулиана — хорошо известная система, которая представляет собой количество целых дней с дня 0, который определяется как 1 января 4713 года до нашей эры в юлианском календаре и 24 ноября 4713 года до нашей эры в григорианском календаре. Поле имеет «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 представляет 6: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 считает целые дни непрерывно, начиная с 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 проверяется на соответствие диапазону допустимых значений. В режиме мягкого режима никакая проверка не выполняется.
© 1993, 2021, 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/17/docs/api/java.base/java/time/temporal/JulianFields.html