Класс Date
- Все реализуемые интерфейсы:
Serializable, Cloneable, Comparable<Date>
- Известные прямые подклассы:
Date, Time, Timestamp
public class Date extends Object implements Serializable, Cloneable, Comparable<Date>
Date представляет определённый момент времени с точностью до миллисекунды. До JDK 1.1 класс Date имел две дополнительные функции. Он позволял интерпретировать даты как значения года, месяца, дня, часа, минуты и секунды. Он также позволял форматировать и разбирать строки с датами. К сожалению, API этих функций не подходил для интернационализации. Начиная с JDK 1.1, для преобразования дат в поля времени и обратно следует использовать класс Calendar, а для форматирования и разбора строк с датами — класс DateFormat. Соответствующие методы в Date объявлены устаревшими.
Хотя класс Date предназначен для отражения всемирного координированного времени (UTC), он может не обеспечивать это в точности — в зависимости от среды, в которой работает виртуальная машина Java. Почти все современные операционные системы предполагают, что 1 день = 24 × 60 × 60 = 86400 секунд во всех случаях. Однако в UTC примерно раз в год или два появляется дополнительная секунда, называемая «високосной секундой». Високосная секунда всегда добавляется в качестве последней секунды дня, и всегда 31 декабря или 30 июня. Например, последняя минута 1995 года длилась 61 секунду благодаря добавленной високосной секунде. Большинство компьютерных часов недостаточно точны, чтобы учитывать различие, связанное с високосной секундой.
Некоторые компьютерные стандарты определяются в терминах среднего времени по Гринвичу (GMT), эквивалентного всемирному времени (UT). GMT — это «гражданское» название стандарта, а UT — «научное» название того же стандарта. Различие между UTC и UT заключается в том, что UTC основано на атомных часах, а UT — на астрономических наблюдениях; с практической точки зрения это различие настолько незначительно, что его почти невозможно заметить. Поскольку вращение Земли неравномерно (оно замедляется и ускоряется сложным образом), UT не всегда течёт равномерно. В UTC при необходимости вводятся високосные секунды, чтобы UTC отличалось от UT1 не более чем на 0,9 секунды; UT1 — это версия UT с применением определённых поправок. Существуют и другие системы времени и дат; например, шкала времени, используемая спутниковой глобальной системой позиционирования (GPS), синхронизирована с UTC, но не корректируется с учётом високосных секунд. Интересный источник дополнительной информации — Военно-морская обсерватория США (USNO):
https://www.usno.navy.mil/USNO
а также материалы о «системах времени» по адресу:
https://www.usno.navy.mil/USNO/time/master-clock/systems-of-time
где описаны различные системы времени, включая UT, UT1 и UTC.
Во всех методах класса Date, которые принимают или возвращают значения года, месяца, даты, часов, минут и секунд, используются следующие представления:
- Год y представляется целым числом y
- 1900. - Месяц представляется целым числом от 0 до 11: 0 — январь, 1 — февраль и так далее; таким образом, 11 — декабрь.
- Дата (день месяца) представляется целым числом от 1 до 31 в обычном порядке.
- Час представляется целым числом от 0 до 23. Таким образом, час с полуночи до 1 часа ночи — это час 0, а час с полудня до 1 часа дня — это час 12.
- Минута представляется целым числом от 0 до 59 в обычном порядке.
- Секунда представляется целым числом от 0 до 61; значения 60 и 61 используются только для високосных секунд, и даже тогда — только в реализациях Java, которые действительно правильно учитывают високосные секунды. Из-за того, как в настоящее время вводятся високосные секунды, вероятность появления двух високосных секунд в одной минуте крайне мала, однако эта спецификация следует соглашениям о датах и времени стандарта ISO C.
Во всех случаях аргументы, передаваемые методам для этих целей, не обязаны находиться в указанных диапазонах; например, дата может быть задана как 32 января и будет интерпретирована как 1 февраля.
- Начиная с:
- 1.0
- См. также:
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
Date() |
Создаёт объект Date и инициализирует его так, чтобы он представлял время создания с точностью до ближайшей миллисекунды. |
Date |
Устарел. |
Date |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.set(year + 1900, month, date, hrs, min) или GregorianCalendar(year + 1900, month, date, hrs, min). |
Date |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.set(year + 1900, month, date, hrs, min, sec) или GregorianCalendar(year + 1900, month, date, hrs, min, sec). |
Date |
Создаёт объект Date и инициализирует его так, чтобы он представлял указанное количество миллисекунд, прошедших с стандартного начального момента времени, известного как «эпоха», а именно с 1 января 1970 года, 00:00:00 GMT. |
Date |
Устарел. Начиная с версии JDK 1.1 заменён на DateFormat.parse(String s). |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
boolean |
after |
Проверяет, находится ли эта дата после указанной даты. |
boolean |
before |
Проверяет, находится ли эта дата до указанной даты. |
Object |
clone() |
Возвращает копию этого объекта. |
int |
compareTo |
Сравнивает две даты для определения порядка. |
boolean |
equals |
Сравнивает две даты на равенство. |
static Date |
from |
Получает экземпляр Date из объекта Instant. |
int |
getDate() |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.get(Calendar.DAY_OF_MONTH). |
int |
getDay() |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.get(Calendar.DAY_OF_WEEK). |
int |
getHours() |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.get(Calendar.HOUR_OF_DAY). |
int |
getMinutes() |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.get(Calendar.MINUTE). |
int |
getMonth() |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.get(Calendar.MONTH). |
int |
getSeconds() |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.get(Calendar.SECOND). |
long |
getTime() |
Возвращает количество миллисекунд, прошедших с 1 января 1970 года, 00:00:00 GMT, которое представлено этим объектом Date. |
int |
getTimezoneOffset() |
Устарел. Начиная с версии JDK 1.1 заменён на -(Calendar.get(Calendar.ZONE_OFFSET) +
Calendar.get(Calendar.DST_OFFSET)) / (60 * 1000). |
int |
getYear() |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.get(Calendar.YEAR) - 1900. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
static long |
parse |
Устарел. Начиная с версии JDK 1.1 заменён на DateFormat.parse(String s). |
void |
setDate |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.set(Calendar.DAY_OF_MONTH, int date). |
void |
setHours |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.set(Calendar.HOUR_OF_DAY, int hours). |
void |
setMinutes |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.set(Calendar.MINUTE, int minutes). |
void |
setMonth |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.set(Calendar.MONTH, int month). |
void |
setSeconds |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.set(Calendar.SECOND, int seconds). |
void |
setTime |
Устанавливает для объекта Date значение, представляющее момент времени через time миллисекунд после 1 января 1970 года, 00:00:00 GMT. |
void |
setYear |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.set(Calendar.YEAR, year + 1900). |
String |
toGMTString() |
Устарел. Начиная с версии JDK 1.1 заменён на DateFormat.format(Date date) с использованием TimeZone GMT. |
Instant |
toInstant() |
Преобразует этот объект Date в Instant. |
String |
toLocaleString() |
Устарел. Начиная с версии JDK 1.1 заменён на DateFormat.format(Date date). |
String |
toString() |
Преобразует этот объект Date в String следующего формата: |
static long |
UTC |
Устарел. Начиная с версии JDK 1.1 заменён на Calendar.set(year + 1900, month, date, hrs, min, sec) или GregorianCalendar(year + 1900, month, date, hrs, min, sec) с использованием TimeZone UTC, за которым следует Calendar.getTime().getTime(). |
Подробное описание конструкторов
Date
public Date()
Date и инициализирует его так, чтобы он представлял время его выделения с точностью до ближайшей миллисекунды.- См. также:
Date
public Date(long date)
Date и инициализирует его так, чтобы он представлял указанное количество миллисекунд, прошедших с стандартного начального момента, известного как «эпоха», а именно с 1 января 1970 года, 00:00:00 GMT.- Параметры:
-
date— количество миллисекунд, прошедших с 1 января 1970 года, 00:00:00 GMT. - См. также:
Date
@Deprecated public Date(int year, int month, int date)
Calendar.set(year + 1900, month, date) или GregorianCalendar(year + 1900, month, date).Date и инициализирует его так, чтобы он представлял местное время полуночи в начале дня, указанного аргументами year, month и date.- Параметры:
-
year— год минус 1900. -
month— месяц от 0 до 11. -
date— день месяца от 1 до 31. - См. также:
Date
@Deprecated public Date(int year, int month, int date, int hrs, int min)
Calendar.set(year + 1900, month, date, hrs, min) или GregorianCalendar(year + 1900, month, date, hrs, min).Date и инициализирует его так, чтобы он представлял момент в начале минуты, указанной аргументами year, month, date, hrs и min, в местном часовом поясе.- Параметры:
-
year— год минус 1900. -
month— месяц от 0 до 11. -
date— день месяца от 1 до 31. -
hrs— часы от 0 до 23. -
min— минуты от 0 до 59. - См. также:
Date
@Deprecated public Date(int year, int month, int date, int hrs, int min, int sec)
Calendar.set(year + 1900, month, date, hrs, min, sec) или GregorianCalendar(year + 1900, month, date, hrs, min, sec).Date и инициализирует его так, чтобы он представлял момент в начале секунды, указанной аргументами year, month, date, hrs, min и sec, в местном часовом поясе.- Параметры:
-
year— год минус 1900. -
month— месяц от 0 до 11. -
date— день месяца от 1 до 31. -
hrs— часы от 0 до 23. -
min— минуты от 0 до 59. -
sec— секунды от 0 до 59. - См. также:
Date
@Deprecated public Date(String s)
DateFormat.parse(String s).Date и инициализирует его так, чтобы он представлял дату и время, указанные строкой s, которая интерпретируется так же, как методом parse(String).- Параметры:
-
s— строковое представление даты. - Исключения:
-
IllegalArgumentException— еслиsнельзя интерпретировать как представление даты и времени. - См. также:
Подробное описание методов
clone
UTC
@Deprecated public static long UTC(int year, int month, int date, int hrs, int min, int sec)
Calendar.set(year + 1900, month, date, hrs, min, sec) или GregorianCalendar(year + 1900, month, date, hrs, min, sec) с использованием UTC TimeZone, за которым следует Calendar.getTime().getTime().Date с шестью аргументами, за исключением того, что аргументы интерпретируются относительно UTC, а не местного часового пояса. Указанное время возвращается в виде расстояния в миллисекундах от эпохи (00:00:00 GMT 1 января 1970 года).- Параметры:
-
year— год минус 1900. -
month— месяц от 0 до 11. -
date— день месяца от 1 до 31. -
hrs— часы от 0 до 23. -
min— минуты от 0 до 59. -
sec— секунды от 0 до 59. - Возвращает:
- количество миллисекунд, прошедших с 1 января 1970 года, 00:00:00 GMT, для даты и времени, заданных аргументами.
- См. также:
parse
@Deprecated public static long parse(String s)
DateFormat.parse(String s).s как представление даты и времени. Если попытка успешна, указанное время возвращается в виде расстояния в миллисекундах от эпохи (00:00:00 GMT 1 января 1970 года). Если попытка не удалась, генерируется IllegalArgumentException. Метод принимает множество синтаксических форм; в частности, он распознает стандартный формат даты IETF: "Sat, 12 Aug 1995 13:30:00 GMT". Он также понимает сокращения часовых поясов континентальной части США, однако в общем случае следует использовать смещение часового пояса: "Sat, 12 Aug 1995 13:30:00 GMT+0430" (4 часа 30 минут к западу от Гринвичского меридиана). Если часовой пояс не указан, предполагается местный часовой пояс. GMT и UTC считаются эквивалентными.
Строка s обрабатывается слева направо с поиском значимых данных. Любой материал в s, заключенный в круглые скобки ASCII ( и ), игнорируется. Скобки могут быть вложенными. В остальных случаях внутри s разрешены только следующие символы ASCII:
и пробельные символы.abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ 0123456789,+-:/
Последовательность идущих подряд десятичных цифр рассматривается как десятичное число:
- Если перед числом стоит
+или-и год уже распознан, число является смещением часового пояса. Если число меньше 24, смещение измеряется в часах. В противном случае оно рассматривается как смещение в минутах, записанное в 24-часовом формате без разделителей. Предшествующий символ-означает смещение к западу. Смещения часового пояса всегда отсчитываются относительно UTC (Гринвича). Так, например,-5в строке означает «пять часов к западу от Гринвича», а+0430— «четыре часа тридцать минут к востоку от Гринвича». Строка может содержать избыточные указанияGMT,UTилиUTC— например,GMT-5илиutc+0430. - Число считается обозначением года, если выполняется одно из следующих условий:
- Число равно или больше 70 и за ним следует пробел, запятая, косая черта или конец строки
- Число меньше 70, а месяц и день месяца уже распознаны
SimpleDateFormat. - Если за числом следует двоеточие, оно считается часом, если час еще не распознан; в противном случае оно считается минутой.
- Если за числом следует косая черта, оно считается месяцем (из него вычитается 1, чтобы получить число в диапазоне от
0до11), если месяц еще не распознан; в противном случае оно считается днем месяца. - Если за числом следует пробельный символ, запятая, дефис или конец строки, оно считается минутой, если час уже распознан, но минута еще нет; в противном случае оно считается секундой, если минута уже распознана, но секунда еще нет; иначе оно считается днем месяца.
Последовательность идущих подряд букв рассматривается как слово и обрабатывается следующим образом:
- Слово, совпадающее с
AMбез учета регистра, игнорируется (но разбор завершается ошибкой, если час не распознан, меньше1или больше12). - Слово, совпадающее с
PMбез учета регистра, добавляет12к часу (но разбор завершается ошибкой, если час не распознан, меньше1или больше12). - Любое слово, совпадающее с любым префиксом
SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAYилиSATURDAYбез учета регистра, игнорируется. Например,sat, Friday, TUEиThursигнорируются. - В противном случае любое слово, совпадающее с любым префиксом
JANUARY, FEBRUARY, MARCH, APRIL, MAY, JUNE, JULY, AUGUST, SEPTEMBER, OCTOBER, NOVEMBERилиDECEMBERбез учета регистра и проверяемое в указанном здесь порядке, распознается как обозначение месяца и преобразуется в число (от0до11). Например,aug, Sept, aprilиNOVраспознаются как месяцы. Также распознаетсяMa, которое считаетсяMARCH, а неMAY. - Любое слово, совпадающее с
GMT, UTилиUTCбез учета регистра, считается обозначением UTC. - Любое слово, совпадающее с
EST, CST, MST,PSTбез учета регистра, распознается как обозначение часового пояса Северной Америки, расположенного соответственно на пять, шесть, семь или восемь часов к западу от Гринвича. Любое слово, совпадающее сEDT, CDT, MDTилиPDTбез учета регистра, распознается как обозначение того же часового пояса соответственно во время перехода на летнее время.
После сканирования всей строки s она преобразуется в результат времени одним из двух способов. Если распознаны часовой пояс или смещение часового пояса, год, месяц, день месяца, час, минута и секунда интерпретируются в UTC, после чего применяется смещение часового пояса. В противном случае год, месяц, день месяца, час, минута и секунда интерпретируются в местном часовом поясе.
- Параметры:
-
s— строка, которую следует разобрать как дату. - Возвращает:
- количество миллисекунд, прошедших с 1 января 1970 года, 00:00:00 GMT, представленное строковым аргументом.
- Исключения:
-
IllegalArgumentException— еслиsнельзя интерпретировать как представление даты и времени. - См. также:
getYear
@Deprecated public int getYear()
Calendar.get(Calendar.YEAR) - 1900.Date, при интерпретации в местном часовом поясе.- Возвращает:
- год, представленный этой датой, минус 1900.
- См. также:
setYear
@Deprecated public void setYear(int year)
Calendar.set(Calendar.YEAR, year + 1900).Date в указанное значение плюс 1900. Этот объект Date изменяется так, чтобы он представлял момент времени в указанном году, сохраняя прежними месяц, дату, час, минуту и секунду при интерпретации в местном часовом поясе. (Разумеется, если дата была, например, 29 февраля, а год установлен в невисокосный, новая дата будет считаться 1 марта.)- Параметры:
-
year— значение года. - См. также:
getMonth
@Deprecated public int getMonth()
Calendar.get(Calendar.MONTH).Date. Возвращаемое значение находится в диапазоне от 0 до 11, причем значение 0 обозначает январь.- Возвращает:
- месяц, представленный этой датой.
- См. также:
setMonth
@Deprecated public void setMonth(int month)
Calendar.set(Calendar.MONTH, int month).Date изменяется так, чтобы он представлял момент времени в указанном месяце, сохраняя прежними год, дату, час, минуту и секунду при интерпретации в местном часовом поясе. Например, если датой было 31 октября, а месяц установлен в июнь, новая дата будет считаться 1 июля, поскольку в июне только 30 дней.- Параметры:
-
month— значение месяца от 0 до 11. - См. также:
getDate
@Deprecated public int getDate()
Calendar.get(Calendar.DAY_OF_MONTH).Date. Возвращаемое значение находится в диапазоне от 1 до 31 и обозначает день месяца, в котором находится или с которого начинается момент времени, представленный этим объектом Date, при интерпретации в местном часовом поясе.- Возвращает:
- день месяца, представленный этой датой.
- См. также:
setDate
@Deprecated public void setDate(int date)
Calendar.set(Calendar.DAY_OF_MONTH, int date).Date в указанное значение. Этот объект Date изменяется так, чтобы он представлял момент времени в указанный день месяца, сохраняя прежними год, месяц, час, минуту и секунду при интерпретации в местном часовом поясе. Например, если датой было 30 апреля, а день месяца установлен в 31, она будет считаться 1 мая, поскольку в апреле только 30 дней.- Параметры:
-
date— значение дня месяца от 1 до 31. - См. также:
getDay
@Deprecated public int getDay()
Calendar.get(Calendar.DAY_OF_WEEK).0 = воскресенье, 1 = понедельник, 2 = вторник, 3 = среда, 4 = четверг, 5 = пятница, 6 = суббота) обозначает день недели, в котором находится или с которого начинается момент времени, представленный этим объектом Date, при интерпретации в местном часовом поясе.- Возвращает:
- день недели, представленный этой датой.
- См. также:
getHours
@Deprecated public int getHours()
Calendar.get(Calendar.HOUR_OF_DAY).Date. Возвращаемое значение — число (от 0 до 23), обозначающее час суток, в котором находится или с которого начинается момент времени, представленный этим объектом Date, при интерпретации в местном часовом поясе.- Возвращает:
- час, представленный этой датой.
- См. также:
setHours
@Deprecated public void setHours(int hours)
Calendar.set(Calendar.HOUR_OF_DAY, int hours).Date в указанное значение. Этот объект Date изменяется так, чтобы он представлял момент времени в указанный час дня, сохраняя прежними год, месяц, дату, минуту и секунду при интерпретации в местном часовом поясе.- Параметры:
-
hours— значение часа. - См. также:
getMinutes
@Deprecated public int getMinutes()
Calendar.get(Calendar.MINUTE).0 до 59.- Возвращает:
- количество минут после начала часа, представленного этой датой.
- См. также:
setMinutes
@Deprecated public void setMinutes(int minutes)
Calendar.set(Calendar.MINUTE, int minutes).Date в указанное значение. Этот объект Date изменяется так, чтобы он представлял момент времени в указанную минуту часа, сохраняя прежними год, месяц, дату, час и секунду при интерпретации в местном часовом поясе.- Параметры:
-
minutes— значение минут. - См. также:
getSeconds
@Deprecated public int getSeconds()
Calendar.get(Calendar.SECOND).0 до 61. Значения 60 и 61 могут встречаться только в тех виртуальных машинах Java, которые учитывают високосные секунды.- Возвращает:
- количество секунд после начала минуты, представленной этой датой.
- См. также:
setSeconds
@Deprecated public void setSeconds(int seconds)
Calendar.set(Calendar.SECOND, int seconds).Date в указанное значение. Этот объект Date изменяется так, чтобы он представлял момент времени в указанную секунду минуты, сохраняя прежними год, месяц, дату, час и минуту при интерпретации в местном часовом поясе.- Параметры:
-
seconds— значение секунд. - См. также:
getTime
public long getTime()
Date.- Возвращает:
- количество миллисекунд, прошедших с 1 января 1970 года, 00:00:00 GMT, представленное этой датой.
setTime
public void setTime(long time)
Date так, чтобы он представлял момент времени, отстоящий на time миллисекунд от 1 января 1970 года, 00:00:00 GMT.- Параметры:
-
time— количество миллисекунд.
before
public boolean before(Date when)
- Параметры:
-
when— дата. - Возвращает:
-
trueтогда и только тогда, когда момент времени, представленный этим объектомDate, строго предшествует моменту, представленномуwhen; в противном случае —false. - Исключения:
-
NullPointerException— еслиwhenравно null.
after
public boolean after(Date when)
- Параметры:
-
when— дата. - Возвращает:
-
trueтогда и только тогда, когда момент времени, представленный этим объектомDate, строго позже момента, представленногоwhen; в противном случае —false. - Исключения:
-
NullPointerException— еслиwhenравно null.
equals
public boolean equals(Object obj)
true тогда и только тогда, когда аргумент не равен null и является объектом Date, представляющим тот же момент времени с точностью до миллисекунды, что и этот объект. Таким образом, два объекта Date равны тогда и только тогда, когда метод getTime возвращает для обоих одно и то же значение long.
compareTo
public int compareTo(Date anotherDate)
- Определено в:
-
compareToв интерфейсеComparable<Date> - Параметры:
-
anotherDate— объектDateдля сравнения. - Возвращает:
- значение
0, если аргумент Date равен этой дате; значение меньше0, если эта дата предшествует аргументу Date; и значение больше0, если эта дата следует за аргументом Date. - Исключения:
-
NullPointerException— еслиanotherDateравно null. - Начиная с:
- 1.2
hashCode
public int hashCode()
long, возвращаемого методом getTime(). То есть хеш-код — это значение выражения: (int)(this.getTime()^(this.getTime() >>> 32))
toString
public String toString()
Date в String следующего формата: где:dow mon dd hh:mm:ss zzz yyyy
-
dow— день недели (Sun, Mon, Tue, Wed, Thu, Fri, Sat). -
mon— месяц (Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec). -
dd— день месяца (от01до31), записанный двумя десятичными цифрами. -
hh— час дня (от00до23), записанный двумя десятичными цифрами. -
mm— минута часа (от00до59), записанная двумя десятичными цифрами. -
ss— секунда минуты (от00до61), записанная двумя десятичными цифрами. -
zzz— часовой пояс (может учитывать переход на летнее время). Стандартные сокращения часовых поясов включают те, которые распознаются методомparse. Если информация о часовом поясе недоступна, тоzzzявляется пустым, то есть не содержит ни одного символа. -
yyyy— год, записанный четырьмя десятичными цифрами.
toLocaleString
@Deprecated public String toLocaleString()
DateFormat.format(Date date).Date в форме, зависящей от реализации. Предполагается, что эта форма будет привычна пользователю Java-приложения вне зависимости от того, где оно выполняется. Этот формат аналогичен формату «%c», поддерживаемому функцией strftime() стандарта ISO C.- Возвращает:
- строковое представление этой даты с использованием региональных соглашений.
- См. также:
toGMTString
@Deprecated public String toGMTString()
DateFormat.format(Date date) с использованием TimeZone GMT.Date следующего формата: где:d mon yyyy hh:mm:ss GMT
-
d — день месяца (от
1до31), записанный одной или двумя десятичными цифрами. -
mon — месяц (
Jan, Feb, Mar, Apr, May, Jun, Jul, Aug, Sep, Oct, Nov, Dec). - yyyy — год, записанный четырьмя десятичными цифрами.
-
hh — час дня (от
00до23), записанный двумя десятичными цифрами. -
mm — минута часа (от
00до59), записанная двумя десятичными цифрами. -
ss — секунда минуты (от
00до61), записанная двумя десятичными цифрами. -
GMT — это в точности буквы ASCII «
GMT», обозначающие среднее время по Гринвичу.
Результат не зависит от местного часового пояса.
- Возвращает:
- строковое представление этой даты с использованием соглашений интернет-формата GMT.
- См. также:
getTimezoneOffset
@Deprecated public int getTimezoneOffset()
-(Calendar.get(Calendar.ZONE_OFFSET) +
Calendar.get(Calendar.DST_OFFSET)) / (60 * 1000).Date. Например, в Массачусетсе, расположенном на пять часовых поясов западнее Гринвича:
поскольку 14 февраля 1996 года действует стандартное время (восточное стандартное время), отстающее от UTC на пять часов; однако:new Date(96, 1, 14).getTimezoneOffset() returns 300
поскольку 1 июня 1996 года действует летнее время (восточное летнее время), отстающее от UTC только на четыре часа.new Date(96, 5, 1).getTimezoneOffset() returns 240
Этот метод даёт тот же результат, что и вычисление выражения:
(this.getTime() - UTC(this.getYear(),
this.getMonth(),
this.getDate(),
this.getHours(),
this.getMinutes(),
this.getSeconds())) / (60 * 1000)
- Возвращает:
- смещение часового пояса в минутах для текущего часового пояса.
- См. также:
from
public static Date from(Instant instant)
Date из объекта Instant. Instant использует точность до наносекунд, тогда как Date — точность до миллисекунд. При преобразовании избыточная точность будет отброшена так, как если бы количество наносекунд было разделено на миллион с целочисленным делением.
Instant может хранить точки на временной шкале, расположенные дальше в будущем и дальше в прошлом, чем Date. В таком случае этот метод выбросит исключение.
- Параметры:
-
instant— момент времени для преобразования - Возвращает:
- объект
Date, представляющий ту же точку на временной шкале, что и переданный момент времени - Выбрасывает:
-
NullPointerException— еслиinstantравен null. -
IllegalArgumentException— если момент времени слишком велик, чтобы его можно было представить какDate - Начиная с:
- 1.8
toInstant
public Instant toInstant()
Date в Instant. При преобразовании создаётся Instant, представляющий ту же точку на временной шкале, что и этот Date.
- Возвращает:
- момент времени, представляющий ту же точку на временной шкале, что и этот объект
Date - Начиная с:
- 1.8
© 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.
https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/Date.html
Calendar.set(year + 1900, month, date)илиGregorianCalendar(year + 1900, month, date).