Spec-Zone.ru › OpenJDK 21

Класс Date

java.lang.Object
java.util.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 Virtual Machine. Почти все современные операционные системы предполагают, что 1 день = 24 × 60 × 60 = 86400 секунд во всех случаях. Однако в UTC примерно раз в год или два появляется дополнительная секунда, называемая «високосной секундой». Високосная секунда всегда добавляется как последняя секунда дня и всегда в 31 декабря или 30 июня. Например, последняя минута 1995 года длилась 61 секунду благодаря добавлению високосной секунды. Большинство компьютерных часов недостаточно точны, чтобы отразить различие високосных секунд.

Некоторые компьютерные стандарты определены в терминах среднего гринвичского времени (GMT), которое эквивалентно всемирному времени (UT). GMT — «гражданское» название стандарта; UT — «научное» название того же стандарта. Различие между UTC и UT заключается в том, что UTC основано на атомных часах, а UT — на астрономических наблюдениях, что для всех практических целей — незаметное различие. Поскольку вращение Земли не является равномерным (оно замедляется и ускоряется сложными способами), UT не всегда протекает равномерно. Високосные секунды вводятся в UTC по мере необходимости, чтобы поддерживать UTC в пределах 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
См. также:
  • DateFormat
  • Calendar
  • TimeZone
  • Форматированное представление

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

Конструктор Описание
Date()
Выделяет объект Date и инициализирует его так, чтобы он представлял время его выделения, измеренное с точностью до миллисекунды.
Date(int year, int month, int date)
Устарело.
С версии JDK 1.1 заменено на Calendar.set(year + 1900, month, date) или GregorianCalendar(year + 1900, month, date).
Date(int year, int month, int date, int hrs, int min)
Устарело.
С версии JDK 1.1 заменено на Calendar.set(year + 1900, month, date, hrs, min) или GregorianCalendar(year + 1900, month, date, hrs, min).
Date(int year, int month, int date, int hrs, int min, int sec)
Устарело.
С версии JDK 1.1 заменено на Calendar.set(year + 1900, month, date, hrs, min, sec) или GregorianCalendar(year + 1900, month, date, hrs, min, sec).
Date(long date)
Выделяет объект Date и инициализирует его так, чтобы он представлял указанное количество миллисекунд, прошедших с момента стандартного базового времени, известного как «эпоха», а именно 1 января 1970 года в 00:00:00 по Гринвичу.
Date(String s)
Устарело.
С версии JDK 1.1 заменено на DateFormat.parse(String s).

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

Модификатор и тип Метод Описание
boolean after(Date when)
Проверяет, является ли эта дата после указанной даты.
boolean before(Date when)
Проверяет, является ли эта дата до указанной даты.
Object clone()
Возвращает копию этого объекта.
int compareTo(Date anotherDate)
Сравнивает две даты для упорядочивания.
boolean equals(Object obj)
Сравнивает две даты на равенство.
static Date from(Instant instant)
Получает экземпляр 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 по Гринвичу, представленное этим объектом 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(String s)
Устарело.
С версии JDK 1.1 заменено на DateFormat.parse(String s).
void setDate(int date)
Устарело.
С версии JDK 1.1 заменено на Calendar.set(Calendar.DAY_OF_MONTH, int date).
void setHours(int hours)
Устарело.
С версии JDK 1.1 заменено на Calendar.set(Calendar.HOUR_OF_DAY, int hours).
void setMinutes(int minutes)
Устарело.
С версии JDK 1.1 заменено на Calendar.set(Calendar.MINUTE, int minutes).
void setMonth(int month)
Устарело.
С версии JDK 1.1 заменено на Calendar.set(Calendar.MONTH, int month).
void setSeconds(int seconds)
Устарело.
С версии JDK 1.1 заменено на Calendar.set(Calendar.SECOND, int seconds).
void setTime(long time)
Устанавливает этот объект Date так, чтобы он представлял точку во времени, которая является time миллисекундами после 1 января 1970 года 00:00:00 по Гринвичу.
void setYear(int year)
Устарело.
С версии JDK 1.1 заменено на Calendar.set(Calendar.YEAR, year + 1900).
String toGMTString()
Устарело.
С версии JDK 1.1 заменено на DateFormat.format(Date date), используя GMT TimeZone.
Instant toInstant()
Преобразует этот объект Date в Instant.
String toLocaleString()
Устарело.
С версии JDK 1.1 заменено на DateFormat.format(Date date).
String toString()
Преобразует этот объект Date в String в формате:
static long UTC(int year, int month, int date, int hrs, int min, int sec)
Устарело.
С версии JDK 1.1 заменено на Calendar.set(year + 1900, month, date, hrs, min, sec) или GregorianCalendar(year + 1900, month, date, hrs, min, sec), используя UTC TimeZone, за которым следует Calendar.getTime().getTime().

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

finalize, getClass, notify, notifyAll, wait, wait, wait

Подробное описание конструкторов

Date

public Date()
Выделяет объект Date и инициализирует его так, чтобы он представлял время его выделения, измеренное с точностью до миллисекунды.
См. также:
  • System.currentTimeMillis()

Date

public Date(long date)
Выделяет объект Date и инициализирует его для представления указанного количества миллисекунд, прошедших с момента стандартного базового времени, известного как «эпоха», а именно 1 января 1970 года, 00:00:00 GMT.
Параметры:
date - миллисекунды, прошедшие с 1 января 1970 года, 00:00:00 GMT.
См. также:
  • System.currentTimeMillis()

Date

@Deprecated public Date(int year, int month, int date)
Устарело.
С версии JDK 1.1 заменено на Calendar.set(year + 1900, month, date) или GregorianCalendar(year + 1900, month, date).
Выделяет объект Date и инициализирует его так, чтобы он представлял полночь по местному времени в начале дня, указанного аргументами year, month, и date.
Параметры:
year - год минус 1900.
month - месяц от 0 до 11.
date - день месяца от 1 до 31.
См. также:
  • Calendar

Date

@Deprecated public Date(int year, int month, int date, int hrs, int min)
Устарело.
С версии JDK 1.1 заменено на 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.
См. также:
  • Calendar

Date

@Deprecated public Date(int year, int month, int date, int hrs, int min, int sec)
Устарело.
С версии JDK 1.1 заменено на 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.
См. также:
  • Calendar

Date

@Deprecated public Date(String s)
Устарело.
С версии JDK 1.1 заменено на DateFormat.parse(String s).
Выделяет объект Date и инициализирует его так, чтобы он представлял дату и время, указанные строкой s, интерпретируемой так же, как методом parse(java.lang.String).
Параметры:
s - строковое представление даты.
Исключения:
IllegalArgumentException - если s не может быть интерпретировано как представление даты и времени.
См. также:
  • DateFormat
  • parse(java.lang.String)

Подробное описание методов

clone

public Object clone()
Возвращает копию этого объекта.
Переопределяет:
clone в классе Object
Возвращает:
клонированный экземпляр.
См. также:
  • Cloneable

UTC

@Deprecated public static long UTC(int year, int month, int date, int hrs, int min, int sec)
Устарело.
С версии JDK 1.1 заменено на 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 для даты и времени, указанных аргументами.
См. также:
  • Calendar

parse

@Deprecated public static long parse(String s)
Устарело.
Начиная с версии JDK 1.1, заменено на 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, и месяц и день месяца уже распознаны
    Если распознанный номер года меньше 100, он интерпретируется как сокращённый год, относительно столетия, в котором даты находятся в пределах 80 лет до и 19 лет после момента инициализации класса Date. После корректировки года из него вычитается 1900. Например, если текущий год 1999, то годы в диапазоне от 19 до 99 считаются 1919–1999, а годы от 0 до 18 — 2000–2018. Обратите внимание, что это немного отличается от интерпретации годов меньше 100, используемой в 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 не может быть интерпретировано как представление даты и времени.
См. также:
  • DateFormat

getYear

@Deprecated public int getYear()
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.get(Calendar.YEAR) - 1900.
Возвращает значение, являющееся результатом вычитания 1900 из года, содержащего или начинающегося с момента времени, представленного этим объектом Date, как интерпретируется в локальном часовом поясе.
Возвращает:
год, представленный этой датой, минус 1900.
См. также:
  • Calendar

setYear

@Deprecated public void setYear(int year)
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.set(Calendar.YEAR, year + 1900).
Устанавливает год этого объекта Date в указанное значение плюс 1900. Этот объект Date изменяется таким образом, что он представляет момент времени в указанном году, при этом месяц, день, час, минута и секунда остаются такими же, как и раньше, интерпретируемые в локальном часовом поясе. (Конечно, если дата была 29 февраля, например, и год устанавливается на невисокосный год, то новая дата будет обрабатываться так, как будто она 1 марта.)
Параметры:
year - значение года.
См. также:
  • Calendar

getMonth

@Deprecated public int getMonth()
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.get(Calendar.MONTH).
Возвращает число, представляющее месяц, содержащий или начинающийся с момента времени, представленного этим объектом Date. Возвращаемое значение находится в диапазоне 0 по 11, при этом значение 0 соответствует январю.
Возвращает:
месяц, представленный этой датой.
См. также:
  • Calendar

setMonth

@Deprecated public void setMonth(int month)
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.set(Calendar.MONTH, int month).
Устанавливает месяц этой даты в указанное значение. Этот объект Date изменяется таким образом, что он представляет момент времени в указанном месяце, при этом год, день, час, минута и секунда остаются такими же, как и раньше, как интерпретируется в локальном часовом поясе. Если дата была 31 октября, например, а месяц устанавливается на июнь, то новая дата будет обрабатываться так, как будто она 1 июля, потому что в июне только 30 дней.
Параметры:
month - значение месяца от 0 до 11.
См. также:
  • Calendar

getDate

@Deprecated public int getDate()
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.get(Calendar.DAY_OF_MONTH).
Возвращает день месяца, представленный этим объектом Date. Возвращаемое значение находится в диапазоне 1 по 31, представляющее день месяца, содержащий или начинающийся с момента времени, представленного этим объектом Date, как интерпретируется в локальном часовом поясе.
Возвращает:
день месяца, представленный этой датой.
См. также:
  • Calendar
END_OF_DOCUMENT_MARKER

setDate

@Deprecated public void setDate(int date)
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.set(Calendar.DAY_OF_MONTH, int date).
Устанавливает число месяца для этого объекта Date в указанное значение. Этот объект Date изменяется таким образом, что он представляет момент времени в указанном дне месяца, с годом, месяцем, часом, минутой и секундой, такими же, как и прежде, как интерпретируется в часовом поясе по умолчанию. Например, если дата была 30 апреля, а дата устанавливается на 31, то она будет рассматриваться так, как если бы она была 1 мая, потому что в апреле только 30 дней.
Parameters:
date - значение числа месяца между 1 и 31.
См. также:
  • Calendar

getDay

@Deprecated public int getDay()
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.get(Calendar.DAY_OF_WEEK).
Возвращает день недели, представленный этой датой. Возвращаемое значение (0 = воскресенье, 1 = понедельник, 2 = вторник, 3 = среда, 4 = четверг, 5 = пятница, 6 = суббота) представляет день недели, содержащий или начинающийся с момента во времени, представленного этим объектом Date , как интерпретируется в часовом поясе по умолчанию.
Returns:
день недели, представленный этой датой.
См. также:
  • Calendar

getHours

@Deprecated public int getHours()
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.get(Calendar.HOUR_OF_DAY).
Возвращает час, представленный этим объектом Date . Возвращаемое значение — число (0 до 23) , представляющее час в течение дня, содержащий или начинающийся с момента времени, представленного этим объектом Date , как интерпретируется в часовом поясе по умолчанию.
Returns:
час, представленный этой датой.
См. также:
  • Calendar

setHours

@Deprecated public void setHours(int hours)
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.set(Calendar.HOUR_OF_DAY, int hours).
Устанавливает час для этого объекта Date в указанное значение. Этот объект Date изменяется таким образом, что он представляет момент времени в указанный час дня, при этом год, месяц, число, минута и секунда остаются такими же, как и прежде, как интерпретируется в часовом поясе по умолчанию.
Parameters:
hours - значение часа.
См. также:
  • Calendar

getMinutes

@Deprecated public int getMinutes()
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.get(Calendar.MINUTE).
Возвращает количество минут, прошедших после часа, представленного этой датой, как интерпретируется в часовом поясе по умолчанию. Возвращаемое значение находится между 0 и 59.
Returns:
количество минут, прошедших после часа, представленного этой датой.
См. также:
  • Calendar

setMinutes

@Deprecated public void setMinutes(int minutes)
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.set(Calendar.MINUTE, int minutes).
Устанавливает минуты для этого объекта Date в указанное значение. Этот объект Date изменяется таким образом, что он представляет момент времени в указанную минуту часа, при этом год, месяц, число, час и секунда остаются такими же, как и прежде, как интерпретируется в часовом поясе по умолчанию.
Parameters:
minutes - значение минут.
См. также:
  • Calendar

getSeconds

@Deprecated public int getSeconds()
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.get(Calendar.SECOND).
Возвращает количество секунд, прошедших после минуты, представленной этой датой. Возвращаемое значение находится между 0 и 61 . Значения 60 и 61 могут встречаться только на тех виртуальных машинах Java, которые учитывают високосные секунды.
Returns:
количество секунд, прошедших после минуты, представленной этой датой.
См. также:
  • Calendar

setSeconds

@Deprecated public void setSeconds(int seconds)
Устарело.
Начиная с версии JDK 1.1, заменено на Calendar.set(Calendar.SECOND, int seconds).
Устанавливает секунды для этого объекта Date в указанное значение. Этот объект Date изменяется таким образом, что он представляет момент времени в указанную секунду минуты, при этом год, месяц, число, час и минута остаются такими же, как и прежде, как интерпретируется в часовом поясе по умолчанию.
Parameters:
seconds - значение секунд.
См. также:
  • Calendar

getTime

public long getTime()
Возвращает количество миллисекунд, прошедших с 1 января 1970 года, 00:00:00 GMT, представленное этим объектом Date .
Returns:
количество миллисекунд, прошедших с 1 января 1970 года, 00:00:00 GMT, представленное этой датой.

setTime

public void setTime(long time)
Устанавливает этот объект Date , чтобы представить момент времени, который time миллисекунд после 1 января 1970 года 00:00:00 GMT.
Parameters:
time - количество миллисекунд.

before

public boolean before(Date when)
Проверяет, является ли эта дата до указанной даты.
Parameters:
when - дата.
Returns:
true тогда и только тогда, когда момент времени, представленный этим объектом Date , строго раньше момента, представленного when; false в противном случае.
Throws:
NullPointerException - если when равно null.

after

public boolean after(Date when)
Проверяет, является ли эта дата после указанной даты.
Parameters:
when - дата.
Returns:
true тогда и только тогда, когда момент, представленный этим объектом Date , строго позже момента, представленного when; false в противном случае.
Throws:
NullPointerException - если when равно null.

equals

public boolean equals(Object obj)
Сравнивает две даты на равенство. Результат — true тогда и только тогда, когда аргумент не null и является объектом типа Date , который представляет тот же момент времени, с точностью до миллисекунды, что и этот объект.

Таким образом, два объекта Date равны тогда и только тогда, когда метод getTime возвращает то же значение long для обоих.

Overrides:
equals в классе Object
Parameters:
obj - объект для сравнения.
Returns:
true , если объекты одинаковые; false в противном случае.
См. также:
  • getTime()

compareTo

public int compareTo(Date anotherDate)
Сравнивает две даты для определения порядка.
Specified by:
compareTo в интерфейсе Comparable<Date>
Parameters:
anotherDate - сравниваемая Date.
Returns:
значение 0 , если аргумент Date равен этой Date; значение меньше 0 , если эта Date предшествует аргументу Date; и значение больше 0 , если эта Date следует за аргументом Date.
Throws:
NullPointerException - если anotherDate равно null.
Since:
1.2

hashCode

public int hashCode()
Возвращает хеш-код для этого объекта. Результатом является исключающее ИЛИ двух половинок примитивного значения long , возвращаемого методом getTime(). То есть, хеш-код — это значение выражения:

 (int)(this.getTime()^(this.getTime() >>> 32))
 
Overrides:
hashCode в классе Object
Returns:
хеш-код для этого объекта.
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(java.lang.Object)

toString

public String toString()
Преобразует этот Date объект в строку формата:
 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 — год, как четырёхзначное число.
Overrides:
toString в классе Object
Возвращает:
строковое представление этой даты.
См. также:
  • toLocaleString()
  • toGMTString()

toLocaleString

@Deprecated public String toLocaleString()
Устарело.
Начиная с версии JDK 1.1, заменено на DateFormat.format(Date date).
Создаёт строковое представление этого Date объекта в формате, зависящем от реализации. Цель состоит в том, чтобы форма была понятна пользователю Java-приложения, где бы оно ни работало. Цель сравнима с форматом "%c", поддерживаемым функцией strftime() ISO C.
Возвращает:
строковое представление этой даты, используя соглашения локали.
См. также:
  • DateFormat
  • toString()
  • toGMTString()

toGMTString

@Deprecated public String toGMTString()
Устарело.
Начиная с версии JDK 1.1, заменено на DateFormat.format(Date date), используя GMT TimeZone.
Создаёт строковое представление этого 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.
См. также:
  • DateFormat
  • toString()
  • toLocaleString()

getTimezoneOffset

@Deprecated public int getTimezoneOffset()
Устарело.
Начиная с версии JDK 1.1, заменено на -(Calendar.get(Calendar.ZONE_OFFSET) + Calendar.get(Calendar.DST_OFFSET)) / (60 * 1000).
Возвращает смещение, измеренное в минутах, для локального часового пояса относительно UTC, соответствующего времени, представленному этим Date объектом.

Например, в штате Массачусетс, пять часовых поясов к западу от Гринвича:

 new Date(96, 1, 14).getTimezoneOffset() returns 300
потому что 14 февраля 1996 года используется стандартное время (Восточное стандартное время), которое смещено на пять часов от UTC; но:
 new Date(96, 5, 1).getTimezoneOffset() returns 240
потому что 1 июня 1996 года используется летнее время (Восточное летнее время), которое смещено всего на четыре часа от UTC.

Этот метод производит тот же результат, что и если бы он вычислил:

 (this.getTime() - UTC(this.getYear(),
                       this.getMonth(),
                       this.getDate(),
                       this.getHours(),
                       this.getMinutes(),
                       this.getSeconds())) / (60 * 1000)
 
Возвращает:
смещение часового пояса в минутах для текущего часового пояса.
См. также:
  • Calendar.ZONE_OFFSET
  • Calendar.DST_OFFSET
  • TimeZone.getDefault()

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, 2023, 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/21/docs/api/java.base/java/util/Date.html

Spec-Zone.ru

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