Package org.postgresql.util

# Class PGTime

java.lang.Object
java.util.Date
java.sql.Time
org.postgresql.util.PGTime

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

public class PGTime extends Time
This class augments the Java built-in Time to allow for explicit setting of the time zone.

See Also:
  - Serialized Form

## Constructor Summary

Constructors
Constructor
Description
`PGTime(long time)`
Constructs a `PGTime` without a time zone.
`PGTime(long time, @Nullable Calendar calendar)`
Constructs a `PGTime` with the given calendar object.

## Method Summary

Modifier and Type
Method
Description
`Object`
`clone()`
`boolean`
`equals(@Nullable Object o)`
`@Nullable Calendar`
`getCalendar()`
Returns the calendar object for this time.
`int`
`hashCode()`
`void`
`setCalendar(@Nullable Calendar calendar)`
Sets the calendar object for this time.

### Methods inherited from class java.sql.Time

`getDate, getDay, getMonth, getYear, setDate, setMonth, setTime, setYear, toInstant, toLocalTime, toString, valueOf, valueOf`

### Methods inherited from class java.util.Date

`after, before, compareTo, from, getHours, getMinutes, getSeconds, getTime, getTimezoneOffset, parse, setHours, setMinutes, setSeconds, toGMTString, toLocaleString, UTC`

### Methods inherited from class java.lang.Object

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

## Constructor Details

### PGTime

public PGTime(long time)
Constructs a `PGTime` without a time zone.

Parameters:
  `time` - milliseconds since January 1, 1970, 00:00:00 GMT; a negative number is milliseconds before January 1, 1970, 00:00:00 GMT.
See Also:
  - `Time(long)`

### PGTime

public PGTime(long time, @Nullable Calendar calendar)
Constructs a `PGTime` with the given calendar object. The calendar object is optional. If absent, the driver will treat the time as `time without time zone`. When present, the driver will treat the time as a `time with time zone` using the `TimeZone` in the calendar object. Furthermore, this calendar will be used instead of the calendar object passed to `PreparedStatement.setTime(int, Time, Calendar)`.

Parameters:
  `time` - milliseconds since January 1, 1970, 00:00:00 GMT; a negative number is milliseconds before January 1, 1970, 00:00:00 GMT.
  `calendar` - the calendar object containing the time zone or `null`.
See Also:
  - `Time(long)`

## Method Details

### setCalendar

public void setCalendar(@Nullable Calendar calendar)
Sets the calendar object for this time.

Parameters:
  `calendar` - the calendar object or `null`.

### getCalendar

public @Nullable Calendar getCalendar()
Returns the calendar object for this time.

Returns:
  the calendar or `null`.

### hashCode

public int hashCode()

Overrides:
  `hashCode` in class `Date`

### equals

public boolean equals(@Nullable Object o)

Overrides:
  `equals` in class `Date`

### clone

public Object clone()

Overrides:
  `clone` in class `Date`