public abstract class

CalendarDate

extends Object
implements Cloneable
java.lang.Object
   ↳ sun.util.calendar.CalendarDate
Known Direct Subclasses
Known Indirect Subclasses

Class Overview

The CalendarDate class represents a specific instant in time by calendar date and time fields that are multiple cycles in different time unites. The semantics of each calendar field is given by a concrete calendar system rather than this CalendarDate class that holds calendar field values without interpreting them. Therefore, this class can be used to represent an amount of time, such as 2 years and 3 months.

A CalendarDate instance can be created by calling the newCalendarDate or getCalendarDate methods in CalendarSystem. A CalendarSystem instance is obtained by calling one of the factory methods in CalendarSystem. Manipulations of calendar dates must be handled by the calendar system by which CalendarDate instances have been created.

Some calendar fields can be modified through method calls. Any modification of a calendar field brings the state of a CalendarDate to not normalized. The normalization must be performed to make all the calendar fields consistent with a calendar system.

The protected methods are intended to be used for implementing a concrete calendar system, not for general use as an API.

See Also

Summary

Constants
int FIELD_UNDEFINED
long TIME_UNDEFINED
Protected Constructors
CalendarDate()
CalendarDate(TimeZone zone)
Public Methods
CalendarDate addDate(int year, int month, int dayOfMonth)
CalendarDate addDayOfMonth(int n)
CalendarDate addHours(int n)
CalendarDate addMillis(int n)
CalendarDate addMinutes(int n)
CalendarDate addMonth(int n)
CalendarDate addSeconds(int n)
CalendarDate addTimeOfDay(int hours, int minutes, int seconds, int millis)
CalendarDate addYear(int n)
Object clone()
Returns a copy of this CalendarDate.
boolean equals(Object obj)
Indicates whether some other object is "equal to" this one.
int getDayOfMonth()
int getDayOfWeek()
Returns the day of week value.
int getDaylightSaving()
Era getEra()
int getHours()
int getMillis()
int getMinutes()
int getMonth()
int getSeconds()
long getTimeOfDay()
int getYear()
TimeZone getZone()
int getZoneOffset()
int hashCode()
Returns a hash code value for the object.
boolean isDaylightTime()
boolean isLeapYear()
Returns whether the year represented by this CalendarDate is a leap year.
boolean isNormalized()
boolean isSameDate(CalendarDate date)
Returns whether the specified date is the same date of this CalendarDate.
boolean isStandardTime()
CalendarDate setDate(int year, int month, int dayOfMonth)
CalendarDate setDayOfMonth(int date)
CalendarDate setEra(Era era)
Sets the era of the date to the specified era.
CalendarDate setHours(int hours)
CalendarDate setMillis(int millis)
CalendarDate setMinutes(int minutes)
CalendarDate setMonth(int month)
CalendarDate setSeconds(int seconds)
void setStandardTime(boolean standardTime)
CalendarDate setTimeOfDay(int hours, int minutes, int seconds, int millis)
CalendarDate setYear(int year)
CalendarDate setZone(TimeZone zoneinfo)
String toString()
Converts calendar date values to a String in the following format.
Protected Methods
void setDayOfWeek(int dayOfWeek)
void setDaylightSaving(int daylightSaving)
void setLocale(Locale loc)
void setNormalized(boolean normalized)
void setTimeOfDay(long fraction)
void setZoneOffset(int offset)
[Expand]
Inherited Methods
From class java.lang.Object

Constants

public static final int FIELD_UNDEFINED

Constant Value: -2147483648 (0x80000000)

public static final long TIME_UNDEFINED

Constant Value: -9223372036854775808 (0x8000000000000000)

Protected Constructors

protected CalendarDate ()

protected CalendarDate (TimeZone zone)

Public Methods

public CalendarDate addDate (int year, int month, int dayOfMonth)

public CalendarDate addDayOfMonth (int n)

public CalendarDate addHours (int n)

public CalendarDate addMillis (int n)

public CalendarDate addMinutes (int n)

public CalendarDate addMonth (int n)

public CalendarDate addSeconds (int n)

public CalendarDate addTimeOfDay (int hours, int minutes, int seconds, int millis)

public CalendarDate addYear (int n)

public Object clone ()

Returns a copy of this CalendarDate. The TimeZone object, if any, is not cloned.

Returns
  • a copy of this CalendarDate

public boolean equals (Object obj)

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any non-null reference values x and y, this method returns true if and only if x and y refer to the same object (x == y has the value true).

Note that it is generally necessary to override the hashCode method whenever this method is overridden, so as to maintain the general contract for the hashCode method, which states that equal objects must have equal hash codes.

Parameters
obj the reference object with which to compare.
Returns
  • true if this object is the same as the obj argument; false otherwise.

public int getDayOfMonth ()

public int getDayOfWeek ()

Returns the day of week value. If this CalendarDate is not normalized, FIELD_UNDEFINED is returned.

Returns

public int getDaylightSaving ()

public Era getEra ()

public int getHours ()

public int getMillis ()

public int getMinutes ()

public int getMonth ()

public int getSeconds ()

public long getTimeOfDay ()

public int getYear ()

public TimeZone getZone ()

public int getZoneOffset ()

public int hashCode ()

Returns a hash code value for the object. This method is supported for the benefit of hashtables such as those provided by java.util.Hashtable.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals(Object) method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals(java.lang.Object) method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hashtables.

As much as is reasonably practical, the hashCode method defined by class Object does return distinct integers for distinct objects. (This is typically implemented by converting the internal address of the object into an integer, but this implementation technique is not required by the JavaTM programming language.)

Returns
  • a hash code value for this object.

public boolean isDaylightTime ()

public boolean isLeapYear ()

Returns whether the year represented by this CalendarDate is a leap year. If leap years are not applicable to the calendar system, this method always returns false.

If this CalendarDate hasn't been normalized, false is returned. The normalization must be performed to retrieve the correct leap year information.

Returns
  • true if this CalendarDate is normalized and the year of this CalendarDate is a leap year, or false otherwise.
See Also
  • BaseCalendar#isGregorianLeapYear

public boolean isNormalized ()

public boolean isSameDate (CalendarDate date)

Returns whether the specified date is the same date of this CalendarDate. The time of the day fields are ignored for the comparison.

public boolean isStandardTime ()

public CalendarDate setDate (int year, int month, int dayOfMonth)

public CalendarDate setDayOfMonth (int date)

public CalendarDate setEra (Era era)

Sets the era of the date to the specified era. The default implementation of this method accepts any Era value, including null.

Throws
NullPointerException if the calendar system for this CalendarDate requires eras and the specified era is null.
IllegalArgumentException if the specified era is unknown to the calendar system for this CalendarDate.

public CalendarDate setHours (int hours)

public CalendarDate setMillis (int millis)

public CalendarDate setMinutes (int minutes)

public CalendarDate setMonth (int month)

public CalendarDate setSeconds (int seconds)

public void setStandardTime (boolean standardTime)

public CalendarDate setTimeOfDay (int hours, int minutes, int seconds, int millis)

public CalendarDate setYear (int year)

public CalendarDate setZone (TimeZone zoneinfo)

public String toString ()

Converts calendar date values to a String in the following format.

     yyyy-MM-dd'T'HH:mm:ss.SSSz
 

Returns
  • a string representation of the object.
See Also

Protected Methods

protected void setDayOfWeek (int dayOfWeek)

protected void setDaylightSaving (int daylightSaving)

protected void setLocale (Locale loc)

protected void setNormalized (boolean normalized)

protected void setTimeOfDay (long fraction)

protected void setZoneOffset (int offset)