Spec-Zone.ru › OpenJDK 27

Класс Timestamp

java.lang.Object
java.util.Date
java.sql.Timestamp
Все реализуемые интерфейсы:
Serializable, Cloneable, Comparable<Date>
public class Timestamp extends Date

Тонкая оболочка вокруг java.util.Date, позволяющая API JDBC распознавать это значение как значение SQL TIMESTAMP. Она добавляет возможность хранить дробную часть секунд SQL TIMESTAMP, позволяя задавать дробные секунды с точностью до наносекунд. Timestamp также предоставляет операции форматирования и разбора для поддержки синтаксиса экранирования JDBC для значений отметки времени.

Точность объекта Timestamp вычисляется следующим образом:

  • 19 — число символов в yyyy-mm-dd hh:mm:ss
  • 20 + s — число символов в yyyy-mm-dd hh:mm:ss.[fff...], где s обозначает масштаб заданного Timestamp, то есть точность его дробной части секунд.

Примечание: Этот тип представляет собой комбинацию java.util.Date и отдельного значения наносекунд. В компоненте java.util.Date хранятся только целые секунды. Дробная часть секунд — наносекунды — хранится отдельно. Метод Timestamp.equals(Object) никогда не возвращает true, если ему передан объект, не являющийся экземпляром java.sql.Timestamp, поскольку компонент наносекунд для даты неизвестен. В результате метод Timestamp.equals(Object) не является симметричным относительно метода java.util.Date.equals(Object).

Из-за различий между классом Timestamp и упомянутым выше классом java.util.Date рекомендуется не рассматривать в коде значения Timestamp обобщённо как экземпляры java.util.Date. Отношение наследования между Timestamp и java.util.Date фактически обозначает наследование реализации, а не наследование типов.

Начиная с:
1.1
См. также:
  • Сериализованная форма

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

Конструктор Описание
Timestamp(int year, int month, int date, int hour, int minute, int second, int nano)
Устарел.
вместо него используйте конструктор Timestamp(long millis)
Timestamp(long time)
Создаёт объект Timestamp на основе значения времени в миллисекундах.

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

Модификатор и тип Метод Описание
boolean after(Timestamp ts)
Показывает, следует ли этот объект Timestamp за заданным объектом Timestamp.
boolean before(Timestamp ts)
Показывает, предшествует ли этот объект Timestamp заданному объекту Timestamp.
int compareTo(Timestamp ts)
Сравнивает этот объект Timestamp с заданным объектом Timestamp.
int compareTo(Date o)
Сравнивает этот объект Timestamp с заданным объектом Date.
boolean equals(Object ts)
Проверяет, равен ли этот объект Timestamp заданному объекту.
boolean equals(Timestamp ts)
Проверяет, равен ли этот объект Timestamp заданному объекту Timestamp.
static Timestamp from(Instant instant)
Создаёт экземпляр Timestamp на основе объекта Instant.
int getNanos()
Возвращает значение nanos этого объекта Timestamp.
long getTime()
Возвращает число миллисекунд с 1 января 1970 г., 00:00:00 по Гринвичу, представленное этим объектом Timestamp.
int hashCode()
Возвращает хеш-код этого объекта Timestamp.
void setNanos(int n)
Устанавливает для поля nanos этого объекта Timestamp заданное значение.
void setTime(long time)
Настраивает этот объект Timestamp для представления момента времени через time миллисекунд после 1 января 1970 г., 00:00:00 по Гринвичу.
Instant toInstant()
Преобразует этот объект Timestamp в Instant.
LocalDateTime toLocalDateTime()
Преобразует этот объект Timestamp в LocalDateTime.
String toString()
Форматирует отметку времени в формате экранирования JDBC для отметки времени.
static Timestamp valueOf(String s)
Преобразует объект String в формате экранирования JDBC для отметки времени в значение Timestamp.
static Timestamp valueOf(LocalDateTime dateTime)
Создаёт экземпляр Timestamp на основе объекта LocalDateTime с теми же значениями даты и времени: годом, месяцем, днём месяца, часами, минутами, секундами и наносекундами, что и у переданного LocalDateTime.

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

after, before, clone, getDate, getDay, getHours, getMinutes, getMonth, getSeconds, getTimezoneOffset, getYear, parse, setDate, setHours, setMinutes, setMonth, setSeconds, setYear, toGMTString, toLocaleString, UTC
Модификатор и тип Метод Описание
boolean after(Date when)
Проверяет, находится ли эта дата после указанной даты.
boolean before(Date when)
Проверяет, находится ли эта дата перед указанной датой.
Object clone()
Возвращает копию этого объекта.
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).
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.
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 setYear(int year)
Устарел.
Начиная с JDK 1.1 заменён на Calendar.set(Calendar.YEAR, year + 1900).
String toGMTString()
Устарел.
Начиная с JDK 1.1 заменён на DateFormat.format(Date date) с использованием TimeZone по Гринвичу.
String toLocaleString()
Устарел.
Начиная с JDK 1.1 заменён на DateFormat.format(Date date).
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) с использованием TimeZone UTC, за которым следует Calendar.getTime().getTime().

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

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

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

Timestamp

@Deprecated(since="1.2") public Timestamp(int year, int month, int date, int hour, int minute, int second, int nano)
Устарел.
вместо него используйте конструктор Timestamp(long millis)
Создаёт объект Timestamp, инициализированный заданными значениями.
Параметры:
year — год минус 1900
month — от 0 до 11
date — от 1 до 31
hour — от 0 до 23
minute — от 0 до 59
second — от 0 до 59
nano — от 0 до 999 999 999
Исключения:
IllegalArgumentException — если значение аргумента nano выходит за допустимые границы

Timestamp

public Timestamp(long time)
Создаёт объект Timestamp на основе значения времени в миллисекундах. Целые секунды хранятся в базовом значении даты; дробная часть секунд хранится в поле nanos объекта Timestamp.
Параметры:
time — число миллисекунд с 1 января 1970 г., 00:00:00 по Гринвичу. Отрицательное число обозначает число миллисекунд до 1 января 1970 г., 00:00:00 по Гринвичу.
См. также:
  • Calendar

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

setTime

public void setTime(long time)
Настраивает этот объект Timestamp для представления момента времени через time миллисекунд после 1 января 1970 г., 00:00:00 по Гринвичу.
Переопределяет:
setTime в классе Date
Параметры:
time — число миллисекунд.
См. также:
  • getTime()
  • Timestamp(long time)
  • Calendar

getTime

public long getTime()
Возвращает число миллисекунд с 1 января 1970 г., 00:00:00 по Гринвичу, представленное этим объектом Timestamp.
Переопределяет:
getTime в классе Date
Возвращает:
число миллисекунд с 1 января 1970 г., 00:00:00 по Гринвичу, представленное этой датой.
См. также:
  • setTime(long)

valueOf

public static Timestamp valueOf(String s)
Преобразует объект String в формате экранирования JDBC для отметки времени в значение Timestamp.
Параметры:
s — отметка времени в формате yyyy-[m]m-[d]d hh:mm:ss[.f...]. Дробная часть секунд может отсутствовать. Начальный ноль в mm и dd также может быть опущен.
Возвращает:
соответствующее значение Timestamp
Исключения:
IllegalArgumentException — если переданный аргумент не соответствует формату yyyy-[m]m-[d]d hh:mm:ss[.f...]

toString

public String toString()
Форматирует отметку времени в формате экранирования JDBC для отметки времени. yyyy-mm-dd hh:mm:ss.fffffffff, где fffffffff обозначает наносекунды.
Переопределяет:
toString в классе Date
Возвращает:
объект String в формате yyyy-mm-dd hh:mm:ss.fffffffff
См. также:
  • Date.toLocaleString()
  • Date.toGMTString()

getNanos

public int getNanos()
Возвращает значение nanos этого объекта Timestamp.
Возвращает:
компонент дробной части секунд этого объекта Timestamp
См. также:
  • setNanos(int)

setNanos

public void setNanos(int n)
Устанавливает для поля nanos этого объекта Timestamp заданное значение.
Параметры:
n — новый компонент дробной части секунд
Исключения:
IllegalArgumentException — если переданный аргумент больше 999999999 или меньше 0
См. также:
  • getNanos()

equals

public boolean equals(Timestamp ts)
Проверяет, равен ли этот объект Timestamp заданному объекту Timestamp.
Параметры:
ts — значение Timestamp для сравнения
Возвращает:
true, если заданный объект Timestamp равен этому объекту Timestamp; в противном случае — false

equals

public boolean equals(Object ts)
Проверяет, равен ли этот объект Timestamp заданному объекту. Эта версия метода equals добавлена, чтобы исправить некорректную сигнатуру Timestamp.equals(Timestamp) и обеспечить обратную совместимость с существующими файлами классов. Примечание: этот метод не является симметричным относительно метода equals(Object) базового класса.
Переопределяет:
equals в классе Date
Параметры:
ts — значение Object для сравнения
Возвращает:
true, если заданный Object является экземпляром Timestamp, равным этому объекту Timestamp; в противном случае — false
См. также:
  • Date.getTime()

before

public boolean before(Timestamp ts)
Показывает, предшествует ли этот объект Timestamp заданному объекту Timestamp.
Параметры:
ts — значение Timestamp для сравнения
Возвращает:
true, если этот объект Timestamp предшествует заданному; в противном случае — false

after

public boolean after(Timestamp ts)
Показывает, следует ли этот объект Timestamp за заданным объектом Timestamp.
Параметры:
ts — значение Timestamp для сравнения
Возвращает:
true, если этот объект Timestamp следует за заданным; в противном случае — false

compareTo

public int compareTo(Timestamp ts)
Сравнивает этот объект Timestamp с заданным объектом Timestamp.
Параметры:
ts — объект Timestamp для сравнения с этим объектом Timestamp
Возвращает:
значение 0, если два объекта Timestamp равны; значение меньше 0, если этот объект Timestamp предшествует заданному аргументу; и значение больше 0, если этот объект Timestamp следует за заданным аргументом.
Начиная с:
1.4

compareTo

public int compareTo(Date o)
Сравнивает этот объект Timestamp с заданным объектом Date.
Определено в:
compareTo в интерфейсе Comparable<Date>
Переопределяет:
compareTo в классе Date
Параметры:
o — объект Date для сравнения с этим объектом Timestamp
Возвращает:
значение 0, если этот объект Timestamp и заданный объект равны; значение меньше 0, если этот объект Timestamp предшествует заданному аргументу; и значение больше 0, если этот объект Timestamp следует за заданным аргументом.
Начиная с:
1.5

hashCode

public int hashCode()
Возвращает хеш-код этого объекта Timestamp. Результат представляет собой исключающее ИЛИ двух половин примитивного значения long, возвращаемого методом getTime(). То есть хеш-код равен значению выражения:
  (int)(this.getTime()^(this.getTime() >>> 32))
Переопределяет:
hashCode в классе Date
Возвращает:
хеш-код этого объекта Timestamp.
См. также:
  • Object.equals(java.lang.Object)
  • System.identityHashCode(Object)

valueOf

public static Timestamp valueOf(LocalDateTime dateTime)
Создаёт экземпляр Timestamp на основе объекта LocalDateTime с теми же значениями даты и времени: годом, месяцем, днём месяца, часами, минутами, секундами и наносекундами, что и у переданного LocalDateTime.

Переданный объект LocalDateTime интерпретируется как локальные дата и время в местном часовом поясе.

Параметры:
dateTime — объект LocalDateTime для преобразования
Возвращает:
объект Timestamp
Исключения:
NullPointerException — если dateTime имеет значение null.
Начиная с:
1.8

toLocalDateTime

public LocalDateTime toLocalDateTime()
Преобразует этот объект Timestamp в LocalDateTime.

В результате преобразования создаётся объект LocalDateTime, представляющий те же значения даты и времени — год, месяц, день месяца, часы, минуты, секунды и наносекунды, — что и этот Timestamp в местном часовом поясе.

Возвращает:
объект LocalDateTime, представляющий те же значения даты и времени
Начиная с:
1.8

from

public static Timestamp from(Instant instant)
Создаёт экземпляр Timestamp на основе объекта Instant.

Instant может хранить точки на временной шкале, расположенные дальше в будущем и прошлом, чем Date. В этом случае данный метод выбрасывает исключение.

Параметры:
instant — момент времени для преобразования
Возвращает:
объект Timestamp, представляющий ту же точку на временной шкале, что и переданный момент времени
Исключения:
NullPointerException — если instant имеет значение null.
IllegalArgumentException — если момент времени слишком велик, чтобы представить его в виде Timestamp
Начиная с:
1.8

toInstant

public Instant toInstant()
Преобразует этот объект Timestamp в Instant.

В результате преобразования создаётся объект Instant, представляющий ту же точку на временной шкале, что и этот Timestamp.

Переопределяет:
toInstant в классе Date
Возвращает:
момент времени, представляющий ту же точку на временной шкале
Начиная с:
1.8

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

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.

Spec-Zone.ru

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