Spec-Zone.ru › OpenJDK 8

Класс 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. Почти все современные операционные системы предполагают, что 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, но не корректируется на прыгающие секунды. Интересным источником дополнительной информации является Астрономическая обсерватория США, особенно Директорат времени по адресу:

http://tycho.usno.navy.mil

и их определения «Систем времени» по адресу:

http://tycho.usno.navy.mil/systime.html

Во всех методах класса 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 февраля.

С:
JDK1.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 GMT.

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 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(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 GMT.

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 - строковое представление даты.
См. также:
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 по Гринвичу, представленное аргументом строки.
См. также:
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

setDate

@Deprecated
public void setDate(int date)

Устаревший. С версии JDK 1.1 заменён на Calendar.set(Calendar.DAY_OF_MONTH, int date).

Устанавливает день месяца этого объекта Date на указанное значение. Этот объект Date изменяется так, чтобы представлять момент времени в указанный день месяца, при этом год, месяц, час, минута и секунда остаются такими же, как и раньше, как интерпретируется в местном часовом поясе. Если дата была 30 апреля, например, а дата установлена на 31, она будет интерпретироваться как 1 мая, поскольку в апреле только 30 дней.

Параметры:
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 объекта, как интерпретируется в местном часовом поясе.

Возвращает:
день недели, представленный этой датой.
См. также:
Calendar

getHours

@Deprecated
public int getHours()

Устаревший. С версии JDK 1.1 заменён на Calendar.get(Calendar.HOUR_OF_DAY).

Возвращает час, представленный этим объектом Date. Возвращаемое значение — число (0 до 23 включительно), представляющее час в течение дня, содержащий или начинающий момент времени, представленный этим объектом Date, интерпретированный в местном часовом поясе.

Возвращает:
час, представленный этой датой.
См. также:
Calendar

setHours

@Deprecated
public void setHours(int hours)

Устарело. Начиная с версии JDK 1.1, заменено на Calendar.set(Calendar.HOUR_OF_DAY, int hours).

Устанавливает час этого объекта Date в указанное значение. Этот объект Date изменяется так, чтобы представлять момент времени в указанный час дня, с годом, месяцем, числом, минутой и секундой такими же, как и раньше, как интерпретируется в местном часовом поясе.

Параметры:
hours - значение часа.
См. также:
Calendar

getMinutes

@Deprecated
public int getMinutes()

Устарело. Начиная с версии JDK 1.1, заменено на Calendar.get(Calendar.MINUTE).

Возвращает количество минут после часа, представленное этой датой, как интерпретируется в местном часовом поясе. Возвращаемое значение находится в диапазоне от 0 до 59.

Возвращает:
количество минут после часа, представленное этой датой.
См. также:
Calendar

setMinutes

@Deprecated
public void setMinutes(int minutes)

Устарело. Начиная с версии JDK 1.1, заменено на Calendar.set(Calendar.MINUTE, int minutes).

Устанавливает минуты этого объекта Date в указанное значение. Этот объект Date изменяется так, чтобы представлять момент времени в указанную минуту часа, с годом, месяцем, числом, часом и секундой такими же, как и раньше, как интерпретируется в местном часовом поясе.

Параметры:
minutes - значение минут.
См. также:
Calendar

getSeconds

@Deprecated
public int getSeconds()

Устарело. Начиная с версии JDK 1.1, заменено на Calendar.get(Calendar.SECOND).

Возвращает количество секунд после минуты, представленной этой датой. Возвращаемое значение находится в диапазоне от 0 до 61. Значения 60 и 61 могут встречаться только на тех виртуальных машинах Java, которые учитывают високосные секунды.

Возвращает:
количество секунд после минуты, представленное этой датой.
См. также:
Calendar

setSeconds

@Deprecated
public void setSeconds(int seconds)

Устарело. Начиная с версии JDK 1.1, заменено на Calendar.set(Calendar.SECOND, int seconds).

Устанавливает секунды этого объекта Date в указанное значение. Этот объект Date изменяется так, чтобы представлять момент времени в указанную секунду минуты, с годом, месяцем, числом, часом и минутой такими же, как и раньше, как интерпретируется в местном часовом поясе.

Параметры:
seconds - значение секунд.
См. также:
Calendar

getTime

public long getTime()

Возвращает количество миллисекунд с 1 января 1970 года 00:00:00 GMT, представленных этим объектом 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 для обоих.

Переопределяет:
equals в классе Object
Параметры:
obj - объект для сравнения.
Возвращает:
true если объекты совпадают; false в противном случае.
См. также:
getTime()

compareTo

public int compareTo(Date anotherDate)

Сравнивает две даты для упорядочивания.

Определено в:
compareTo в интерфейсе Comparable<Date>
Параметры:
anotherDate - сравниваемая Date.
Возвращает:
значение 0 если аргумент Date равен этой Date; значение меньше 0 если эта Date раньше аргумента Date; и значение больше 0 если эта Date позже аргумента Date.
Исключения:
NullPointerException - если anotherDate равно null.
С:
1.2

hashCode

public int hashCode()

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

(int)(this.getTime()^(this.getTime() >>> 32))

Переопределяет:
hashCode в классе Object
Возвращает:
хэш-код для этого объекта.
См. также:
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 — год, как четыре десятичные цифры.

Переопределяет:
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 — точно символы "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, 2020, 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