Class Time

All Implemented Interfaces:
Serializable, Cloneable, Comparable<Date>

public class Time extends Date

A thin wrapper around the java.util.Date class that allows the JDBC API to identify this as an SQL TIME value. The Time class adds formatting and parsing operations to support the JDBC escape syntax for time values.

The date components should be set to the "zero epoch" value of January 1, 1970 and should not be accessed.

Since:
1.1
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Time(int hour, int minute, int second)
    Deprecated.
    Use the constructor that takes a milliseconds value in place of this constructor
    Time(long time)
    Constructs a Time object using a milliseconds time value.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Deprecated. 
    int
    Deprecated. 
    int
    Deprecated. 
    int
    Deprecated. 
    void
    setDate(int i)
    Deprecated. 
    void
    setMonth(int i)
    Deprecated. 
    void
    setTime(long time)
    Sets a Time object using a milliseconds time value.
    void
    setYear(int i)
    Deprecated. 
    This method always throws an UnsupportedOperationException and should not be used because SQL Time values do not have a date component.
    Converts this Time object to a LocalTime.
    Formats a time in JDBC time escape format.
    static Time
    Converts a string in JDBC time escape format to a Time value.
    static Time
    Obtains an instance of Time from a LocalTime object with the same hour, minute and second time value as the given LocalTime.

    Methods declared in class Date

    after, before, clone, compareTo, equals, from, getHours, getMinutes, getSeconds, getTime, getTimezoneOffset, hashCode, parse, setHours, setMinutes, setSeconds, toGMTString, toLocaleString, UTC
    Modifier and Type
    Method
    Description
    boolean
    after(Date when)
    Tests if this date is after the specified date.
    boolean
    before(Date when)
    Tests if this date is before the specified date.
    Return a copy of this object.
    int
    compareTo(Date anotherDate)
    Compares two Dates for ordering.
    boolean
    Compares two dates for equality.
    static Date
    from(Instant instant)
    Obtains an instance of Date from an Instant object.
    int
    Deprecated.
    As of JDK version 1.1, replaced by Calendar.get(Calendar.HOUR_OF_DAY).
    int
    Deprecated.
    As of JDK version 1.1, replaced by Calendar.get(Calendar.MINUTE).
    int
    Deprecated.
    As of JDK version 1.1, replaced by Calendar.get(Calendar.SECOND).
    long
    Returns the number of milliseconds since January 1, 1970, 00:00:00 GMT represented by this Date object.
    int
    Deprecated.
    As of JDK version 1.1, replaced by -(Calendar.get(Calendar.ZONE_OFFSET) + Calendar.get(Calendar.DST_OFFSET)) / (60 * 1000).
    int
    Returns a hash code value for this object.
    static long
    Deprecated.
    As of JDK version 1.1, replaced by DateFormat.parse(String s).
    void
    setHours(int hours)
    Deprecated.
    As of JDK version 1.1, replaced by Calendar.set(Calendar.HOUR_OF_DAY, int hours).
    void
    setMinutes(int minutes)
    Deprecated.
    As of JDK version 1.1, replaced by Calendar.set(Calendar.MINUTE, int minutes).
    void
    setSeconds(int seconds)
    Deprecated.
    As of JDK version 1.1, replaced by Calendar.set(Calendar.SECOND, int seconds).
    Deprecated.
    As of JDK version 1.1, replaced by DateFormat.format(Date date), using a GMT TimeZone.
    Deprecated.
    As of JDK version 1.1, replaced by DateFormat.format(Date date).
    static long
    UTC(int year, int month, int date, int hrs, int min, int sec)
    Deprecated.
    As of JDK version 1.1, replaced by Calendar.set(year + 1900, month, date, hrs, min, sec) or GregorianCalendar(year + 1900, month, date, hrs, min, sec), using a UTC TimeZone, followed by Calendar.getTime().getTime().

    Methods declared in class Object

    finalize, getClass, notify, notifyAll, wait, wait, wait
    Modifier and Type
    Method
    Description
    protected void
    Deprecated, for removal: This API element is subject to removal in a future version.
    Finalization is deprecated and subject to removal in a future release.
    final Class<?>
    Returns the runtime class of this Object.
    final void
    Wakes up a single thread that is waiting on this object's monitor.
    final void
    Wakes up all threads that are waiting on this object's monitor.
    final void
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted.
    final void
    wait(long timeoutMillis)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
    final void
    wait(long timeoutMillis, int nanos)
    Causes the current thread to wait until it is awakened, typically by being notified or interrupted, or until a certain amount of real time has elapsed.
  • Constructor Details

    • Time

      @Deprecated(since="1.2") public Time(int hour, int minute, int second)
      Deprecated.
      Use the constructor that takes a milliseconds value in place of this constructor
      Constructs a Time object initialized with the given values for the hour, minute, and second. The driver sets the date components to January 1, 1970. Any method that attempts to access the date components of a Time object will throw a java.lang.IllegalArgumentException.

      The result is undefined if a given argument is out of bounds.

      Parameters:
      hour - 0 to 23
      minute - 0 to 59
      second - 0 to 59
    • Time

      public Time(long time)
      Constructs a Time object using a milliseconds time value.
      Parameters:
      time - milliseconds since January 1, 1970, 00:00:00 GMT; a negative number is milliseconds before January 1, 1970, 00:00:00 GMT
  • Method Details

    • setTime

      public void setTime(long time)
      Sets a Time object using a milliseconds time value.
      Overrides:
      setTime in class Date
      Parameters:
      time - milliseconds since January 1, 1970, 00:00:00 GMT; a negative number is milliseconds before January 1, 1970, 00:00:00 GMT
    • valueOf

      public static Time valueOf(String s)
      Converts a string in JDBC time escape format to a Time value.
      Parameters:
      s - time in format "hh:mm:ss"
      Returns:
      a corresponding Time object
    • toString

      public String toString()
      Formats a time in JDBC time escape format.
      Overrides:
      toString in class Date
      Returns:
      a String in hh:mm:ss format
      See Also:
    • getYear

      @Deprecated(since="1.2") public int getYear()
      Deprecated.
      This method is deprecated and should not be used because SQL TIME values do not have a year component.
      Overrides:
      getYear in class Date
      Returns:
      the year represented by this date, minus 1900.
      Throws:
      IllegalArgumentException - if this method is invoked
      See Also:
    • getMonth

      @Deprecated(since="1.2") public int getMonth()
      Deprecated.
      This method is deprecated and should not be used because SQL TIME values do not have a month component.
      Overrides:
      getMonth in class Date
      Returns:
      the month represented by this date.
      Throws:
      IllegalArgumentException - if this method is invoked
      See Also:
    • getDay

      @Deprecated(since="1.2") public int getDay()
      Deprecated.
      This method is deprecated and should not be used because SQL TIME values do not have a day component.
      Overrides:
      getDay in class Date
      Returns:
      the day of the week represented by this date.
      Throws:
      IllegalArgumentException - if this method is invoked
      See Also:
    • getDate

      @Deprecated(since="1.2") public int getDate()
      Deprecated.
      This method is deprecated and should not be used because SQL TIME values do not have a date component.
      Overrides:
      getDate in class Date
      Returns:
      the day of the month represented by this date.
      Throws:
      IllegalArgumentException - if this method is invoked
      See Also:
    • setYear

      @Deprecated(since="1.2") public void setYear(int i)
      Deprecated.
      This method is deprecated and should not be used because SQL TIME values do not have a year component.
      Overrides:
      setYear in class Date
      Parameters:
      i - the year value.
      Throws:
      IllegalArgumentException - if this method is invoked
      See Also:
    • setMonth

      @Deprecated(since="1.2") public void setMonth(int i)
      Deprecated.
      This method is deprecated and should not be used because SQL TIME values do not have a month component.
      Overrides:
      setMonth in class Date
      Parameters:
      i - the month value between 0-11.
      Throws:
      IllegalArgumentException - if this method is invoked
      See Also:
    • setDate

      @Deprecated(since="1.2") public void setDate(int i)
      Deprecated.
      This method is deprecated and should not be used because SQL TIME values do not have a date component.
      Overrides:
      setDate in class Date
      Parameters:
      i - the day of the month value between 1-31.
      Throws:
      IllegalArgumentException - if this method is invoked
      See Also:
    • valueOf

      public static Time valueOf(LocalTime time)
      Obtains an instance of Time from a LocalTime object with the same hour, minute and second time value as the given LocalTime. The nanosecond field from LocalTime is not part of the newly created Time object.
      Parameters:
      time - a LocalTime to convert
      Returns:
      a Time object
      Throws:
      NullPointerException - if time is null
      Since:
      1.8
    • toLocalTime

      public LocalTime toLocalTime()
      Converts this Time object to a LocalTime.

      The conversion creates a LocalTime that represents the same hour, minute, and second time value as this Time. The nanosecond LocalTime field will be set to zero.

      Returns:
      a LocalTime object representing the same time value
      Since:
      1.8
    • toInstant

      public Instant toInstant()
      This method always throws an UnsupportedOperationException and should not be used because SQL Time values do not have a date component.
      Overrides:
      toInstant in class Date
      Returns:
      an instant representing the same point on the time-line as this Date object
      Throws:
      UnsupportedOperationException - if this method is invoked