|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectjava.util.Calendar
@TransactionType(value=SUPPORTS) public abstract class Calendar
Calendar
is an abstract base class for converting between a
Date
object and a set of integer fields such as
YEAR
, MONTH
, DAY
,
HOUR
, and so on. (A Date
object represents a
specific instant in time with millisecond precision. See Date
for
information about the Date
class.)
Subclasses of Calendar
interpret a Date
according to the rules of a specific calendar system.
Like other locale-sensitive classes, Calendar
provides a class
method, getInstance
, for getting a generally useful object of
this type.
Calendar rightNow = Calendar.getInstance();
A Calendar
object can produce all the time field values needed
to implement the date-time formatting for a particular language and calendar
style (for example, Japanese-Gregorian, Japanese-Traditional).
When computing a Date
from time fields, there may be
insufficient information to compute the Date
(such as only
year and month but no day in the month).
Insufficient information. The calendar will use default
information to specify the missing fields. This may vary by calendar; for the
Gregorian calendar, the default for a field is the same as that of the start
of the epoch: i.e., YEAR = 1970, MONTH = JANUARY, DATE = 1, etc.
Note: The ambiguity in interpretation of what day midnight
belongs to, is resolved as so: midnight "belongs" to the following day.
23:59 on Dec 31, 1969 < 00:00 on Jan 1, 1970.
12:00 PM is midday, and 12:00 AM is midnight.
11:59 PM on Jan 1 < 12:00 AM on Jan 2 < 12:01 AM on Jan 2.
11:59 AM on Mar 10 < 12:00 PM on Mar 10 < 12:01 PM on Mar 10.
24:00 or greater are invalid. Hours greater than 12 are invalid in AM/PM
mode. Setting the time will never change the date.
If equivalent times are entered in AM/PM or 24 hour mode, equality will be determined by the actual time rather than the entered time.
This class has been subset for Java ME based on the JDK 1.3 Calendar class. Many methods and variables have been pruned, and other methods simplified, in an effort to reduce the size of this class.
Date
,
TimeZone
Field Summary | |
---|---|
static int |
AM
Value of the AM_PM field indicating the period of the day
from midnight to just before noon. |
static int |
AM_PM
Field number for get and set indicating
whether the HOUR is before or after noon. |
static int |
APRIL
Value of the MONTH field indicating the fourth month of
the year. |
static int |
AUGUST
Value of the MONTH field indicating the eighth month of
the year. |
static int |
DATE
Field number for get and set indicating the
day of the month. |
static int |
DAY_OF_MONTH
Field number for get and set indicating the
day of the month. |
static int |
DAY_OF_WEEK
Field number for get and set indicating the
day of the week. |
static int |
DECEMBER
Value of the MONTH field indicating the twelfth month of
the year. |
static int |
FEBRUARY
Value of the MONTH field indicating the second month of
the year. |
protected int[] |
fields
The field values for the currently set time for this calendar. |
static int |
FRIDAY
Value of the DAY_OF_WEEK field indicating Friday. |
static int |
HOUR
Field number for get and set indicating the
hour of the morning or afternoon. |
static int |
HOUR_OF_DAY
Field number for get and set indicating the
hour of the day. |
protected boolean[] |
isSet
The flags which tell if a specified time field for the calendar is set. |
static int |
JANUARY
Value of the MONTH field indicating the first month of the
year. |
static int |
JULY
Value of the MONTH field indicating the seventh month of
the year. |
static int |
JUNE
Value of the MONTH field indicating the sixth month of the
year. |
static int |
MARCH
Value of the MONTH field indicating the third month of the
year. |
static int |
MAY
Value of the MONTH field indicating the fifth month of the
year. |
static int |
MILLISECOND
Field number for get and set indicating the
millisecond within the second. |
static int |
MINUTE
Field number for get and set indicating the
minute within the hour. |
static int |
MONDAY
Value of the DAY_OF_WEEK field indicating Monday. |
static int |
MONTH
Field number for get and set indicating the
month. |
static int |
NOVEMBER
Value of the MONTH field indicating the eleventh month of
the year. |
static int |
OCTOBER
Value of the MONTH field indicating the tenth month of the
year. |
static int |
PM
Value of the AM_PM field indicating the period of the day
from noon to just before midnight. |
static int |
SATURDAY
Value of the DAY_OF_WEEK field indicating Saturday. |
static int |
SECOND
Field number for get and set indicating the
second within the minute. |
static int |
SEPTEMBER
Value of the MONTH field indicating the ninth month of the
year. |
static int |
SUNDAY
Value of the DAY_OF_WEEK field indicating Sunday. |
static int |
THURSDAY
Value of the DAY_OF_WEEK field indicating Thursday. |
protected long |
time
The currently set time for this calendar, expressed in milliseconds after January 1, 1970, 0:00:00 GMT. |
static int |
TUESDAY
Value of the DAY_OF_WEEK field indicating Tuesday. |
static int |
WEDNESDAY
Value of the DAY_OF_WEEK field indicating Wednesday. |
static int |
YEAR
Field number for get and set indicating the
year. |
Constructor Summary | |
---|---|
protected |
Calendar()
Constructs a Calendar with the default time zone. |
Method Summary | |
---|---|
boolean |
after(Object when)
Compares the time field records. |
boolean |
before(Object when)
Compares the time field records. |
protected abstract void |
computeFields()
Converts the current millisecond time value time to field
values in fields[] . |
protected abstract void |
computeTime()
Converts the current field values in fields[] to the
millisecond time value time . |
boolean |
equals(Object obj)
Compares this calendar to the specified object. |
int |
get(int field)
Gets the value for a given time field. |
static Calendar |
getInstance()
Gets a calendar using the default time zone. |
static Calendar |
getInstance(TimeZone zone)
Gets a calendar using the specified time zone. |
Date |
getTime()
Gets this Calendar's current time. |
protected long |
getTimeInMillis()
Gets this Calendar's current time as a long expressed in milliseconds after January 1, 1970, 0:00:00 GMT (the epoch). |
TimeZone |
getTimeZone()
Gets the time zone. |
int |
hashCode()
Returns a hash code for this calendar. |
void |
set(int field,
int value)
Sets the time field with the given value. |
void |
setTime(Date date)
Sets this Calendar's current time with the given Date. |
protected void |
setTimeInMillis(long millis)
Sets this Calendar's current time from the given long value. |
void |
setTimeZone(TimeZone value)
Sets the time zone with the given time zone value. |
Methods inherited from class java.lang.Object |
---|
getClass, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
public static final int YEAR
get
and set
indicating the
year. This is a calendar-specific value.
public static final int MONTH
get
and set
indicating the
month. This is a calendar-specific value.
public static final int DATE
get
and set
indicating the
day of the month. This is a synonym for DAY_OF_MONTH
.
DAY_OF_MONTH
,
Constant Field Valuespublic static final int DAY_OF_MONTH
get
and set
indicating the
day of the month. This is a synonym for DATE
.
DATE
,
Constant Field Valuespublic static final int DAY_OF_WEEK
get
and set
indicating the
day of the week.
public static final int AM_PM
get
and set
indicating
whether the HOUR
is before or after noon. E.g., at
10:04:15.250 PM the AM_PM
is PM
.
AM
,
PM
,
HOUR
,
Constant Field Valuespublic static final int HOUR
get
and set
indicating the
hour of the morning or afternoon. HOUR
is used for the
12-hour clock. E.g., at 10:04:15.250 PM the HOUR
is 10.
AM_PM
,
HOUR_OF_DAY
,
Constant Field Valuespublic static final int HOUR_OF_DAY
get
and set
indicating the
hour of the day. HOUR_OF_DAY
is used for the 24-hour
clock. E.g., at 10:04:15.250 PM the HOUR_OF_DAY
is 22.
public static final int MINUTE
get
and set
indicating the
minute within the hour. E.g., at 10:04:15.250 PM the MINUTE
is 4.
public static final int SECOND
get
and set
indicating the
second within the minute. E.g., at 10:04:15.250 PM the
SECOND
is 15.
public static final int MILLISECOND
get
and set
indicating the
millisecond within the second. E.g., at 10:04:15.250 PM the
MILLISECOND
is 250.
public static final int SUNDAY
DAY_OF_WEEK
field indicating Sunday.
public static final int MONDAY
DAY_OF_WEEK
field indicating Monday.
public static final int TUESDAY
DAY_OF_WEEK
field indicating Tuesday.
public static final int WEDNESDAY
DAY_OF_WEEK
field indicating Wednesday.
public static final int THURSDAY
DAY_OF_WEEK
field indicating Thursday.
public static final int FRIDAY
DAY_OF_WEEK
field indicating Friday.
public static final int SATURDAY
DAY_OF_WEEK
field indicating Saturday.
public static final int JANUARY
MONTH
field indicating the first month of the
year.
public static final int FEBRUARY
MONTH
field indicating the second month of
the year.
public static final int MARCH
MONTH
field indicating the third month of the
year.
public static final int APRIL
MONTH
field indicating the fourth month of
the year.
public static final int MAY
MONTH
field indicating the fifth month of the
year.
public static final int JUNE
MONTH
field indicating the sixth month of the
year.
public static final int JULY
MONTH
field indicating the seventh month of
the year.
public static final int AUGUST
MONTH
field indicating the eighth month of
the year.
public static final int SEPTEMBER
MONTH
field indicating the ninth month of the
year.
public static final int OCTOBER
MONTH
field indicating the tenth month of the
year.
public static final int NOVEMBER
MONTH
field indicating the eleventh month of
the year.
public static final int DECEMBER
MONTH
field indicating the twelfth month of
the year.
public static final int AM
AM_PM
field indicating the period of the day
from midnight to just before noon.
public static final int PM
AM_PM
field indicating the period of the day
from noon to just before midnight.
protected int[] fields
protected boolean[] isSet
protected long time
Constructor Detail |
---|
protected Calendar()
TimeZone.getDefault()
Method Detail |
---|
public final Date getTime()
setTime(java.util.Date)
public final void setTime(Date date)
Note: Calling setTime()
with
Date(Long.MAX_VALUE)
or Date(Long.MIN_VALUE)
may yield incorrect field values from get()
.
date
- the given Date.getTime()
public static Calendar getInstance()
public static Calendar getInstance(TimeZone zone)
zone
- the time zone to use
protected long getTimeInMillis()
setTimeInMillis(long)
protected void setTimeInMillis(long millis)
millis
- the new time in UTC milliseconds from the epoch.getTimeInMillis()
public final int get(int field)
field
- the given time field (either YEAR, MONTH, DATE, DAY_OF_WEEK,
HOUR_OF_DAY, HOUR, AM_PM, MINUTE, SECOND, or MILLISECOND).
ArrayIndexOutOfBoundsException
- if the parameter is not one of the above.public final void set(int field, int value)
field
- the given time field (either YEAR, MONTH, DATE, DAY_OF_WEEK,
HOUR_OF_DAY, HOUR, AM_PM, MINUTE, SECOND, or MILLISECOND).value
- the value to be set for the given time field.
ArrayIndexOutOfBoundsException
- if the parameter is not one of the above.public boolean equals(Object obj)
true
if and only if the argument is not null
and is a Calendar
object that represents the same calendar
as this object.
equals
in class Object
obj
- the object to compare with.
true
if the objects are the same;
false
otherwise.Boolean.hashCode()
,
Hashtable
public int hashCode()
hashCode
in class Object
Object.equals(java.lang.Object)
,
Hashtable
public boolean before(Object when)
when
- the Calendar to be compared with this Calendar.
public boolean after(Object when)
when
- the Calendar to be compared with this Calendar.
public void setTimeZone(TimeZone value)
value
- the given time zone.getTimeZone()
public TimeZone getTimeZone()
setTimeZone(java.util.TimeZone)
protected abstract void computeFields()
time
to field
values in fields[]
. This allows you to sync up the time
field values with a new time that is set for the calendar.
protected abstract void computeTime()
fields[]
to the
millisecond time value time
.
|
|||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |