Module java.desktop
Package javax.print.attribute

## Class DateTimeSyntax

- java.lang.Object
- - javax.print.attribute.DateTimeSyntax

- All Implemented Interfaces:
    `Serializable`, `Cloneable`
  Direct Known Subclasses:
    `DateTimeAtCompleted`, `DateTimeAtCreation`, `DateTimeAtProcessing`, `JobHoldUntil`

      public abstract class DateTimeSyntax
      extends Object
      implements Serializable, Cloneable

  Class `DateTimeSyntax` is an abstract base class providing the common implementation of all attributes whose value is a date and time.

  Under the hood, a date-time attribute is stored as a value of class `java.util.Date`. You can get a date-time attribute's `Date` value by calling `getValue()`. A date-time attribute's `Date` value is established when it is constructed (see `DateTimeSyntax(Date)`). Once constructed, a date-time attribute's value is immutable.

  To construct a date-time attribute from separate values of the year, month, day, hour, minute, and so on, use a `java.util.Calendar` object to construct a `java.util.Date` object, then use the `java.util.Date` object to construct the date-time attribute. To convert a date-time attribute to separate values of the year, month, day, hour, minute, and so on, create a `java.util.Calendar` object and set it to the `java.util.Date` from the date-time attribute. Class `DateTimeSyntax` stores its value in the form of a `java.util.Date` rather than a `java.util.Calendar` because it typically takes less memory to store and less time to compare a `java.util.Date` than a `java.util.Calendar`.

  See Also:
    Serialized Form

- - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `DateTimeSyntax​(Date value)` | Construct a new date-time attribute with the given `java.util.Date` value.

  - ### Method Summary

    Modifier and Type | Method | Description
    --- | --- | ---
    `boolean` | `equals​(Object object)` | Returns whether this date-time attribute is equivalent to the passed in object.
    `Date` | `getValue()` | Returns this date-time attribute's `java.util.Date` value.
    `int` | `hashCode()` | Returns a hash code value for this date-time attribute.
    `String` | `toString()` | Returns a string value corresponding to this date-time attribute.

    - ### Methods declared in class java.lang.Object

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

- - ### Constructor Detail

    - #### DateTimeSyntax

          protected DateTimeSyntax​(Date value)

      Construct a new date-time attribute with the given `java.util.Date` value.
      Parameters:
        `value` - `java.util.Date` value
      Throws:
        `NullPointerException` - if `value` is `null`

  - ### Method Detail

    - #### getValue

          public Date getValue()

      Returns this date-time attribute's `java.util.Date` value.
      Returns:
        the `Date`

    - #### equals

          public boolean equals​(Object object)

      Returns whether this date-time attribute is equivalent to the passed in object. To be equivalent, all of the following conditions must be true:
      1. `object` is not `null`.
      2. `object` is an instance of class `DateTimeSyntax`.
      3. This date-time attribute's `java.util.Date` value and `object`'s `java.util.Date` value are equal.
      Overrides:
        `equals` in class `Object`
      Parameters:
        `object` - `Object` to compare to
      Returns:
        `true` if `object` is equivalent to this date-time attribute, `false` otherwise
      See Also:
        `Object.hashCode()`, `HashMap`

    - #### hashCode

          public int hashCode()

      Returns a hash code value for this date-time attribute. The hashcode is that of this attribute's `java.util.Date` value.
      Overrides:
        `hashCode` in class `Object`
      Returns:
        a hash code value for this object.
      See Also:
        `Object.equals(java.lang.Object)`, `System.identityHashCode(java.lang.Object)`

    - #### toString

          public String toString()

      Returns a string value corresponding to this date-time attribute. The string value is just this attribute's `java.util.Date` value converted to a string.
      Overrides:
        `toString` in class `Object`
      Returns:
        a string representation of the object.