Class BuddhistCalendar
- All Implemented Interfaces:
Serializable,Cloneable,Comparable<Calendar>
BuddhistCalendar is a subclass of GregorianCalendar
that numbers years since the birth of the Buddha. This is the civil calendar
in some predominantly Buddhist countries such as Thailand, and it is used for
religious purposes elsewhere.
The Buddhist calendar is identical to the Gregorian calendar in all respects except for the year and era. Years are numbered since the birth of the Buddha in 543 BC (Gregorian), so that 1 AD (Gregorian) is equivalent to 544 BE (Buddhist Era) and 1998 AD is 2541 BE.
The Buddhist Calendar has only one allowable era: BE. If the
calendar is not in lenient mode (see setLenient), dates before
1/1/1 BE are rejected with an IllegalArgumentException.
This class should not be subclassed.
BuddhistCalendar usually should be instantiated using
Calendar.getInstance(ULocale) passing in a ULocale
with the tag "@calendar=buddhist".
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.graalvm.shadowed.com.ibm.icu.util.Calendar
Calendar.FormatConfiguration, Calendar.WeekData -
Field Summary
FieldsFields inherited from class org.graalvm.shadowed.com.ibm.icu.util.GregorianCalendar
AD, BC, invertGregorian, isGregorianFields inherited from class org.graalvm.shadowed.com.ibm.icu.util.Calendar
AM, AM_PM, APRIL, AUGUST, BASE_FIELD_COUNT, DATE, DAY_OF_MONTH, DAY_OF_WEEK, DAY_OF_WEEK_IN_MONTH, DAY_OF_YEAR, DECEMBER, DOW_LOCAL, DST_OFFSET, EPOCH_JULIAN_DAY, ERA, EXTENDED_YEAR, FEBRUARY, FRIDAY, GREATEST_MINIMUM, HOUR, HOUR_OF_DAY, INTERNALLY_SET, IS_LEAP_MONTH, JAN_1_1_JULIAN_DAY, JANUARY, JULIAN_DAY, JULY, JUNE, LEAST_MAXIMUM, MARCH, MAX_DATE, MAX_FIELD_COUNT, MAX_JULIAN, MAX_MILLIS, MAXIMUM, MAY, MILLISECOND, MILLISECONDS_IN_DAY, MIN_DATE, MIN_JULIAN, MIN_MILLIS, MINIMUM, MINIMUM_USER_STAMP, MINUTE, MONDAY, MONTH, NOVEMBER, OCTOBER, ONE_DAY, ONE_HOUR, ONE_MINUTE, ONE_SECOND, ONE_WEEK, ORDINAL_MONTH, PM, RESOLVE_REMAP, SATURDAY, SECOND, SEPTEMBER, SUNDAY, THURSDAY, TUESDAY, UNDECIMBER, UNSET, WALLTIME_FIRST, WALLTIME_LAST, WALLTIME_NEXT_VALID, WEDNESDAY, WEEK_OF_MONTH, WEEK_OF_YEAR, WEEKDAY, WEEKEND, WEEKEND_CEASE, WEEKEND_ONSET, YEAR, YEAR_WOY, ZONE_OFFSET -
Constructor Summary
ConstructorsConstructorDescriptionConstructs aBuddhistCalendarusing the current time in the default time zone with the default locale.BuddhistCalendar(int year, int month, int date) Constructs aBuddhistCalendarwith the given date set in the default time zone with the default locale.BuddhistCalendar(int year, int month, int date, int hour, int minute, int second) Constructs a BuddhistCalendar with the given date and time set for the default time zone with the default locale.BuddhistCalendar(Date date) Constructs aBuddhistCalendarwith the given date set in the default time zone with the default locale.BuddhistCalendar(Locale aLocale) Constructs aBuddhistCalendarbased on the current time in the default time zone with the given locale.BuddhistCalendar(TimeZone zone) Constructs aBuddhistCalendarbased on the current time in the given time zone with the default locale.BuddhistCalendar(TimeZone zone, Locale aLocale) Constructs aBuddhistCalendarbased on the current time in the given time zone with the given locale.BuddhistCalendar(TimeZone zone, ULocale locale) Constructs aBuddhistCalendarbased on the current time in the given time zone with the given locale.BuddhistCalendar(ULocale locale) Constructs aBuddhistCalendarbased on the current time in the default time zone with the given locale. -
Method Summary
Modifier and TypeMethodDescriptiongetType()Returns the calendar type name string for this Calendar object.protected voidhandleComputeFields(int julianDay) Override Calendar to compute several fields specific to the hybrid Gregorian-Julian calendar system.protected inthandleComputeMonthStart(int eyear, int month, boolean useMonth) Return JD of start of given month/yearprotected intReturns the extended year defined by the current fields.protected inthandleGetLimit(int field, int limitType) Override GregorianCalendar.protected booleanDeprecated.This API is ICU internal only.Methods inherited from class org.graalvm.shadowed.com.ibm.icu.util.GregorianCalendar
getActualMaximum, getActualMinimum, getGregorianChange, handleComputeJulianDay, handleGetMonthLength, handleGetYearLength, hashCode, isEquivalentTo, isLeapYear, roll, setGregorianChangeMethods inherited from class org.graalvm.shadowed.com.ibm.icu.util.Calendar
add, after, before, clear, clear, clone, compareTo, complete, computeFields, computeGregorianFields, computeGregorianMonthStart, computeJulianDay, computeMillisInDay, computeMillisInDayLong, computeTime, computeZoneOffset, computeZoneOffset, equals, fieldDifference, fieldName, floorDivide, floorDivide, floorDivide, floorDivide, get, getAvailableLocales, getAvailableULocales, getDateAtTimePattern, getDateTimeFormat, getDateTimeFormat, getDateTimePattern, getDayOfWeekType, getDefaultDayInMonth, getDefaultMonthInYear, getDisplayName, getDisplayName, getFieldCount, getFieldResolutionTable, getFirstDayOfWeek, getGreatestMinimum, getGregorianDayOfMonth, getGregorianDayOfYear, getGregorianMonth, getGregorianYear, getInstance, getInstance, getInstance, getInstance, getInstance, getInstance, getKeywordValuesForLocale, getLeastMaximum, getLimit, getLocale, getMaximum, getMinimalDaysInFirstWeek, getMinimum, getRelatedYear, getRepeatedWallTimeOption, getSkippedWallTimeOption, getStamp, getTemporalMonthCode, getTime, getTimeInMillis, getTimeZone, getWeekData, getWeekDataForRegion, getWeekendTransition, gregorianMonthLength, gregorianPreviousMonthLength, handleCreateFields, handleGetDateFormat, handleGetDateFormat, handleGetDateFormat, handleGetDateFormat, haveDefaultCentury, inTemporalLeapYear, internalGet, internalGet, internalGetMonth, internalGetMonth, internalGetTimeInMillis, internalSet, isGregorianLeapYear, isLenient, isSet, isWeekend, isWeekend, julianDayToDayOfWeek, julianDayToMillis, millisToJulianDay, newerField, newestStamp, pinField, prepareGetActual, resolveFields, roll, set, set, set, set, setFirstDayOfWeek, setLenient, setMinimalDaysInFirstWeek, setRelatedYear, setRepeatedWallTimeOption, setSkippedWallTimeOption, setTemporalMonthCode, setTime, setTimeInMillis, setTimeZone, setWeekData, toString, validateField, validateField, validateFields, weekNumber, weekNumber
-
Field Details
-
BE
public static final int BEConstant for the Buddhist Era. This is the only allowableERAvalue for the Buddhist calendar.- See Also:
-
-
Constructor Details
-
BuddhistCalendar
public BuddhistCalendar()Constructs aBuddhistCalendarusing the current time in the default time zone with the default locale. -
BuddhistCalendar
Constructs aBuddhistCalendarbased on the current time in the given time zone with the default locale.- Parameters:
zone- the given time zone.
-
BuddhistCalendar
Constructs aBuddhistCalendarbased on the current time in the default time zone with the given locale.- Parameters:
aLocale- the given locale.
-
BuddhistCalendar
Constructs aBuddhistCalendarbased on the current time in the default time zone with the given locale.- Parameters:
locale- the given ulocale.
-
BuddhistCalendar
-
BuddhistCalendar
-
BuddhistCalendar
Constructs aBuddhistCalendarwith the given date set in the default time zone with the default locale.- Parameters:
date- The date to which the new calendar is set.
-
BuddhistCalendar
public BuddhistCalendar(int year, int month, int date) Constructs aBuddhistCalendarwith the given date set in the default time zone with the default locale. -
BuddhistCalendar
public BuddhistCalendar(int year, int month, int date, int hour, int minute, int second) Constructs a BuddhistCalendar with the given date and time set for the default time zone with the default locale.- Parameters:
year- The value used to set the calendar'sYEARtime field.month- The value used to set the calendar'sMONTHtime field. The value is 0-based. e.g., 0 for January.date- The value used to set the calendar'sDATEtime field.hour- The value used to set the calendar'sHOUR_OF_DAYtime field.minute- The value used to set the calendar'sMINUTEtime field.second- The value used to set the calendar'sSECONDtime field.
-
-
Method Details
-
handleGetExtendedYear
protected int handleGetExtendedYear()Description copied from class:CalendarReturns the extended year defined by the current fields. This will use the EXTENDED_YEAR field or the YEAR and supra-year fields (such as ERA) specific to the calendar system, depending on which set of fields is newer.- Overrides:
handleGetExtendedYearin classGregorianCalendar- Returns:
- the extended year
-
handleComputeMonthStart
protected int handleComputeMonthStart(int eyear, int month, boolean useMonth) Description copied from class:GregorianCalendarReturn JD of start of given month/year- Overrides:
handleComputeMonthStartin classGregorianCalendar- Parameters:
eyear- the extended yearmonth- the zero-based month, or 0 if useMonth is falseuseMonth- if false, compute the day before the first day of the given year, otherwise, compute the day before the first day of the given month- Returns:
- the Julian day number of the day before the first day of the given month and year
-
handleComputeFields
protected void handleComputeFields(int julianDay) Description copied from class:GregorianCalendarOverride Calendar to compute several fields specific to the hybrid Gregorian-Julian calendar system. These are:- ERA
- YEAR
- MONTH
- DAY_OF_MONTH
- DAY_OF_YEAR
- EXTENDED_YEAR
- Overrides:
handleComputeFieldsin classGregorianCalendar
-
handleGetLimit
protected int handleGetLimit(int field, int limitType) Override GregorianCalendar. There is only one Buddhist ERA. We should really handle YEAR, YEAR_WOY, and EXTENDED_YEAR here too to implement the 1..5000000 range, but it's not critical.- Overrides:
handleGetLimitin classGregorianCalendar- Parameters:
field- one of the above field numberslimitType- one ofMINIMUM,GREATEST_MINIMUM,LEAST_MAXIMUM, orMAXIMUM
-
getType
Returns the calendar type name string for this Calendar object. The returned string is the legacy ICU calendar attribute value, for example, "gregorian" or "japanese".See type="old type name" for the calendar attribute of locale IDs at http://www.unicode.org/reports/tr35/#Key_Type_Definitions
- Overrides:
getTypein classGregorianCalendar- Returns:
- legacy calendar type name string
-
isEra0CountingBackward
Deprecated.This API is ICU internal only.The year in this calendar is counting from 1 backward if the era is 0.- Overrides:
isEra0CountingBackwardin classGregorianCalendar- Returns:
- The year in era 0 of this calendar is counting backward from 1.
-