Java Doc for ChineseCalendar.java in  » Internationalization-Localization » icu4j » com » ibm » icu » util » Java Source Code / Java DocumentationJava Source Code and Java Documentation

Java Source Code / Java Documentation
1. 6.0 JDK Core
2. 6.0 JDK Modules
3. 6.0 JDK Modules com.sun
4. 6.0 JDK Modules com.sun.java
5. 6.0 JDK Modules sun
6. 6.0 JDK Platform
7. Ajax
8. Apache Harmony Java SE
9. Aspect oriented
10. Authentication Authorization
11. Blogger System
12. Build
13. Byte Code
14. Cache
15. Chart
16. Chat
17. Code Analyzer
18. Collaboration
19. Content Management System
20. Database Client
21. Database DBMS
22. Database JDBC Connection Pool
23. Database ORM
24. Development
25. EJB Server geronimo
26. EJB Server GlassFish
27. EJB Server JBoss 4.2.1
28. EJB Server resin 3.1.5
29. ERP CRM Financial
30. ESB
31. Forum
32. GIS
33. Graphic Library
34. Groupware
35. HTML Parser
36. IDE
37. IDE Eclipse
38. IDE Netbeans
39. Installer
40. Internationalization Localization
41. Inversion of Control
42. Issue Tracking
43. J2EE
44. JBoss
45. JMS
46. JMX
47. Library
48. Mail Clients
49. Net
50. Parser
51. PDF
52. Portal
53. Profiler
54. Project Management
55. Report
56. RSS RDF
57. Rule Engine
58. Science
59. Scripting
60. Search Engine
61. Security
62. Sevlet Container
63. Source Control
64. Swing Library
65. Template Engine
66. Test Coverage
67. Testing
68. UML
69. Web Crawler
70. Web Framework
71. Web Mail
72. Web Server
73. Web Services
74. Web Services apache cxf 2.0.1
75. Web Services AXIS2
76. Wiki Engine
77. Workflow Engines
78. XML
79. XML UI
Java
Java Tutorial
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL / SQL
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Java Source Code / Java Documentation » Internationalization Localization » icu4j » com.ibm.icu.util 
Source Cross Reference  Class Diagram Java Document (Java Doc) 


java.lang.Object
   com.ibm.icu.util.Calendar
      com.ibm.icu.util.ChineseCalendar

ChineseCalendar
public class ChineseCalendar extends Calendar (Code)
ChineseCalendar is a concrete subclass of Calendar that implements a traditional Chinese calendar. The traditional Chinese calendar is a lunisolar calendar: Each month starts on a new moon, and the months are numbered according to solar events, specifically, to guarantee that month 11 always contains the winter solstice. In order to accomplish this, leap months are inserted in certain years. Leap months are numbered the same as the month they follow. The decision of which month is a leap month depends on the relative movements of the sun and moon.

This class defines one addition field beyond those defined by Calendar: The IS_LEAP_MONTH field takes the value of 0 for normal months, or 1 for leap months.

All astronomical computations are performed with respect to a time zone of GMT+8:00 and a longitude of 120 degrees east. Although some calendars implement a historically more accurate convention of using Beijing's local longitude (116 degrees 25 minutes east) and time zone (GMT+7:45:40) for dates before 1929, we do not implement this here.

Years are counted in two different ways in the Chinese calendar. The first method is by sequential numbering from the 61st year of the reign of Huang Di, 2637 BCE, which is designated year 1 on the Chinese calendar. The second method uses 60-year cycles from the same starting point, which is designated year 1 of cycle 1. In this class, the EXTENDED_YEAR field contains the sequential year count. The ERA field contains the cycle number, and the YEAR field contains the year of the cycle, a value between 1 and 60.

There is some variation in what is considered the starting point of the calendar, with some sources starting in the first year of the reign of Huang Di, rather than the 61st. This gives continuous year numbers 60 years greater and cycle numbers one greater than what this class implements.

Because ChineseCalendar defines an additional field and redefines the way the ERA field is used, it requires a new format class, ChineseDateFormat. As always, use the methods DateFormat.getXxxInstance(Calendar cal,...) to obtain a formatter for this calendar.

References:

This class should not be subclassed.

ChineseCalendar usually should be instantiated using com.ibm.icu.util.Calendar.getInstance(ULocale) passing in a ULocale with the tag "@calendar=chinese".


See Also:   com.ibm.icu.text.ChineseDateFormat
See Also:   com.ibm.icu.util.Calendar
author:
   Alan Liu


Field Summary
final static  int[][][]CHINESE_DATE_PRECEDENCE
     Field resolution table that incorporates IS_LEAP_MONTH.
public static  intIS_LEAP_MONTH
     Field indicating whether or not the current month is a leap month.

Constructor Summary
public  ChineseCalendar()
     Construct a Chinese calendar with the default time zone and locale.
public  ChineseCalendar(TimeZone zone, Locale locale)
     Construct a Chinese calendar with the given time zone and locale.
public  ChineseCalendar(TimeZone zone, ULocale locale)
     Construct a Chinese calendar with the given time zone and locale.

Method Summary
public  voidadd(int field, int amount)
     Override Calendar to handle leap months properly.
protected  int[][][]getFieldResolutionTable()
     Override Calendar to add IS_LEAP_MONTH to the field resolution table.
public  StringgetType()
     Return the current Calendar type.
protected  voidhandleComputeFields(int julianDay)
     Override Calendar to compute several fields specific to the Chinese calendar system.
protected  inthandleComputeMonthStart(int eyear, int month, boolean useMonth)
     Return the Julian day number of day before the first day of the given month in the given extended year.

Note: This method reads the IS_LEAP_MONTH field to determine whether the given month is a leap month.
Parameters:
  eyear - the extended year
Parameters:
  month - the zero-based month.

protected  int[]handleCreateFields()
     Override Calendar to allocate our additional field.
protected  DateFormathandleGetDateFormat(String pattern, ULocale locale)
     Framework method to create a calendar-specific DateFormat object using the the given pattern.
protected  inthandleGetExtendedYear()
     Implement abstract Calendar method to return the extended year defined by the current fields.
protected  inthandleGetLimit(int field, int limitType)
     Override Calendar to return the limit value for the given field.
protected  inthandleGetMonthLength(int extendedYear, int month)
     Override Calendar method to return the number of days in the given extended year and month.
public  voidroll(int field, int amount)
     Override Calendar to handle leap months properly.

Field Detail
CHINESE_DATE_PRECEDENCE
final static int[][][] CHINESE_DATE_PRECEDENCE(Code)
Field resolution table that incorporates IS_LEAP_MONTH.



IS_LEAP_MONTH
public static int IS_LEAP_MONTH(Code)
Field indicating whether or not the current month is a leap month. Should have a value of 0 for non-leap months, and 1 for leap months.




Constructor Detail
ChineseCalendar
public ChineseCalendar()(Code)
Construct a Chinese calendar with the default time zone and locale.



ChineseCalendar
public ChineseCalendar(TimeZone zone, Locale locale)(Code)
Construct a Chinese calendar with the given time zone and locale.
Parameters:
  zone - time zone for this calendar
Parameters:
  locale - locale for this calendar



ChineseCalendar
public ChineseCalendar(TimeZone zone, ULocale locale)(Code)
Construct a Chinese calendar with the given time zone and locale.
Parameters:
  zone - time zone for this calendar
Parameters:
  locale - ulocale for this calendar




Method Detail
add
public void add(int field, int amount)(Code)
Override Calendar to handle leap months properly.



getFieldResolutionTable
protected int[][][] getFieldResolutionTable()(Code)
Override Calendar to add IS_LEAP_MONTH to the field resolution table.



getType
public String getType()(Code)
Return the current Calendar type. type of calendar (gregorian, etc.)



handleComputeFields
protected void handleComputeFields(int julianDay)(Code)
Override Calendar to compute several fields specific to the Chinese calendar system. These are:
  • ERA
  • YEAR
  • MONTH
  • DAY_OF_MONTH
  • DAY_OF_YEAR
  • EXTENDED_YEAR
The DAY_OF_WEEK and DOW_LOCAL fields are already set when this method is called. The getGregorianXxx() methods return Gregorian calendar equivalents for the given Julian day.

Compute the ChineseCalendar-specific field IS_LEAP_MONTH.




handleComputeMonthStart
protected int handleComputeMonthStart(int eyear, int month, boolean useMonth)(Code)
Return the Julian day number of day before the first day of the given month in the given extended year.

Note: This method reads the IS_LEAP_MONTH field to determine whether the given month is a leap month.
Parameters:
  eyear - the extended year
Parameters:
  month - the zero-based month. The month is also determinedby reading the IS_LEAP_MONTH field. the Julian day number of the day before the firstday of the given month and year




handleCreateFields
protected int[] handleCreateFields()(Code)
Override Calendar to allocate our additional field.



handleGetDateFormat
protected DateFormat handleGetDateFormat(String pattern, ULocale locale)(Code)
Framework method to create a calendar-specific DateFormat object using the the given pattern. This method is responsible for creating the calendar- specific DateFormat and DateFormatSymbols objects as needed.



handleGetExtendedYear
protected int handleGetExtendedYear()(Code)
Implement abstract Calendar method to return the extended year defined by the current fields. This will use either the ERA and YEAR field as the cycle and year-of-cycle, or the EXTENDED_YEAR field as the continuous year count, depending on which is newer.



handleGetLimit
protected int handleGetLimit(int field, int limitType)(Code)
Override Calendar to return the limit value for the given field.



handleGetMonthLength
protected int handleGetMonthLength(int extendedYear, int month)(Code)
Override Calendar method to return the number of days in the given extended year and month.

Note: This method also reads the IS_LEAP_MONTH field to determine whether or not the given month is a leap month.




roll
public void roll(int field, int amount)(Code)
Override Calendar to handle leap months properly.



Fields inherited from com.ibm.icu.util.Calendar
final public static int AM(Code)(Java Doc)
final public static int AM_PM(Code)(Java Doc)
final public static int APRIL(Code)(Java Doc)
final public static int AUGUST(Code)(Java Doc)
final protected static int BASE_FIELD_COUNT(Code)(Java Doc)
final public static int DATE(Code)(Java Doc)
final static int[][][] DATE_PRECEDENCE(Code)(Java Doc)
final public static int DAY_OF_MONTH(Code)(Java Doc)
final public static int DAY_OF_WEEK(Code)(Java Doc)
final public static int DAY_OF_WEEK_IN_MONTH(Code)(Java Doc)
final public static int DAY_OF_YEAR(Code)(Java Doc)
final public static int DECEMBER(Code)(Java Doc)
final public static int DOW_LOCAL(Code)(Java Doc)
final static int[][][] DOW_PRECEDENCE(Code)(Java Doc)
final public static int DST_OFFSET(Code)(Java Doc)
final protected static int EPOCH_JULIAN_DAY(Code)(Java Doc)
final public static int ERA(Code)(Java Doc)
final public static int EXTENDED_YEAR(Code)(Java Doc)
final public static int FEBRUARY(Code)(Java Doc)
final public static int FRIDAY(Code)(Java Doc)
final protected static int GREATEST_MINIMUM(Code)(Java Doc)
final public static int HOUR(Code)(Java Doc)
final public static int HOUR_OF_DAY(Code)(Java Doc)
final protected static int INTERNALLY_SET(Code)(Java Doc)
final public static int JANUARY(Code)(Java Doc)
final protected static int JAN_1_1_JULIAN_DAY(Code)(Java Doc)
final public static int JULIAN_DAY(Code)(Java Doc)
final public static int JULY(Code)(Java Doc)
final public static int JUNE(Code)(Java Doc)
final protected static int LEAST_MAXIMUM(Code)(Java Doc)
final public static int MARCH(Code)(Java Doc)
final protected static int MAXIMUM(Code)(Java Doc)
final protected static Date MAX_DATE(Code)(Java Doc)
final protected static int MAX_FIELD_COUNT(Code)(Java Doc)
final protected static int MAX_JULIAN(Code)(Java Doc)
final protected static long MAX_MILLIS(Code)(Java Doc)
final public static int MAY(Code)(Java Doc)
final public static int MILLISECOND(Code)(Java Doc)
final public static int MILLISECONDS_IN_DAY(Code)(Java Doc)
final protected static int MINIMUM(Code)(Java Doc)
final protected static int MINIMUM_USER_STAMP(Code)(Java Doc)
final public static int MINUTE(Code)(Java Doc)
final protected static Date MIN_DATE(Code)(Java Doc)
final protected static int MIN_JULIAN(Code)(Java Doc)
final protected static long MIN_MILLIS(Code)(Java Doc)
final public static int MONDAY(Code)(Java Doc)
final public static int MONTH(Code)(Java Doc)
final public static int NOVEMBER(Code)(Java Doc)
final public static int OCTOBER(Code)(Java Doc)
final protected static long ONE_DAY(Code)(Java Doc)
final protected static int ONE_HOUR(Code)(Java Doc)
final protected static int ONE_MINUTE(Code)(Java Doc)
final protected static int ONE_SECOND(Code)(Java Doc)
final protected static long ONE_WEEK(Code)(Java Doc)
final public static int PM(Code)(Java Doc)
final protected static int RESOLVE_REMAP(Code)(Java Doc)
final public static int SATURDAY(Code)(Java Doc)
final public static int SECOND(Code)(Java Doc)
final public static int SEPTEMBER(Code)(Java Doc)
final public static int SUNDAY(Code)(Java Doc)
final public static int THURSDAY(Code)(Java Doc)
final public static int TUESDAY(Code)(Java Doc)
final public static int UNDECIMBER(Code)(Java Doc)
final protected static int UNSET(Code)(Java Doc)
final public static int WEDNESDAY(Code)(Java Doc)
final public static int WEEKDAY(Code)(Java Doc)
final public static int WEEKEND(Code)(Java Doc)
final public static int WEEKEND_CEASE(Code)(Java Doc)
final public static int WEEKEND_ONSET(Code)(Java Doc)
final public static int WEEK_OF_MONTH(Code)(Java Doc)
final public static int WEEK_OF_YEAR(Code)(Java Doc)
final public static int YEAR(Code)(Java Doc)
final public static int YEAR_WOY(Code)(Java Doc)
final public static int ZONE_OFFSET(Code)(Java Doc)

Methods inherited from com.ibm.icu.util.Calendar
public void add(int field, int amount)(Code)(Java Doc)
public boolean after(Object when)(Code)(Java Doc)
public boolean before(Object when)(Code)(Java Doc)
final public void clear()(Code)(Java Doc)
final public void clear(int field)(Code)(Java Doc)
public Object clone()(Code)(Java Doc)
public int compareTo(Calendar that)(Code)(Java Doc)
public int compareTo(Object that)(Code)(Java Doc)
protected void complete()(Code)(Java Doc)
protected void computeFields()(Code)(Java Doc)
final protected void computeGregorianFields(int julianDay)(Code)(Java Doc)
protected int computeGregorianMonthStart(int year, int month)(Code)(Java Doc)
protected int computeJulianDay()(Code)(Java Doc)
protected int computeMillisInDay()(Code)(Java Doc)
protected void computeTime()(Code)(Java Doc)
protected int computeZoneOffset(long millis, int millisInDay)(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
public int fieldDifference(Date when, int field)(Code)(Java Doc)
protected String fieldName(int field)(Code)(Java Doc)
final protected static long floorDivide(long numerator, long denominator)(Code)(Java Doc)
final protected static int floorDivide(int numerator, int denominator)(Code)(Java Doc)
final protected static int floorDivide(int numerator, int denominator, int[] remainder)(Code)(Java Doc)
final protected static int floorDivide(long numerator, int denominator, int[] remainder)(Code)(Java Doc)
final public int get(int field)(Code)(Java Doc)
public int getActualMaximum(int field)(Code)(Java Doc)
public int getActualMinimum(int field)(Code)(Java Doc)
public static Locale[] getAvailableLocales()(Code)(Java Doc)
public static ULocale[] getAvailableULocales()(Code)(Java Doc)
static Set getCalendarFactoryNames()(Code)(Java Doc)
public DateFormat getDateTimeFormat(int dateStyle, int timeStyle, Locale loc)(Code)(Java Doc)
public DateFormat getDateTimeFormat(int dateStyle, int timeStyle, ULocale loc)(Code)(Java Doc)
public int getDayOfWeekType(int dayOfWeek)(Code)(Java Doc)
protected int getDefaultDayInMonth(int extendedYear, int month)(Code)(Java Doc)
protected int getDefaultMonthInYear(int extendedYear)(Code)(Java Doc)
public String getDisplayName(Locale loc)(Code)(Java Doc)
public String getDisplayName(ULocale loc)(Code)(Java Doc)
final public int getFieldCount()(Code)(Java Doc)
protected int[][][] getFieldResolutionTable()(Code)(Java Doc)
public int getFirstDayOfWeek()(Code)(Java Doc)
final public int getGreatestMinimum(int field)(Code)(Java Doc)
final protected int getGregorianDayOfMonth()(Code)(Java Doc)
final protected int getGregorianDayOfYear()(Code)(Java Doc)
final protected int getGregorianMonth()(Code)(Java Doc)
final protected int getGregorianYear()(Code)(Java Doc)
public static synchronized Calendar getInstance()(Code)(Java Doc)
public static synchronized Calendar getInstance(TimeZone zone)(Code)(Java Doc)
public static synchronized Calendar getInstance(Locale aLocale)(Code)(Java Doc)
public static synchronized Calendar getInstance(ULocale locale)(Code)(Java Doc)
public static synchronized Calendar getInstance(TimeZone zone, Locale aLocale)(Code)(Java Doc)
public static synchronized Calendar getInstance(TimeZone zone, ULocale locale)(Code)(Java Doc)
static synchronized Calendar getInstance(TimeZone zone, ULocale locale, String factoryName)(Code)(Java Doc)
final public int getLeastMaximum(int field)(Code)(Java Doc)
protected int getLimit(int field, int limitType)(Code)(Java Doc)
final public ULocale getLocale(ULocale.Type type)(Code)(Java Doc)
final public int getMaximum(int field)(Code)(Java Doc)
public int getMinimalDaysInFirstWeek()(Code)(Java Doc)
final public int getMinimum(int field)(Code)(Java Doc)
final protected int getStamp(int field)(Code)(Java Doc)
final public Date getTime()(Code)(Java Doc)
public long getTimeInMillis()(Code)(Java Doc)
public TimeZone getTimeZone()(Code)(Java Doc)
public String getType()(Code)(Java Doc)
public int getWeekendTransition(int dayOfWeek)(Code)(Java Doc)
final protected static int gregorianMonthLength(int y, int m)(Code)(Java Doc)
final protected static int gregorianPreviousMonthLength(int y, int m)(Code)(Java Doc)
protected void handleComputeFields(int julianDay)(Code)(Java Doc)
protected int handleComputeJulianDay(int bestField)(Code)(Java Doc)
abstract protected int handleComputeMonthStart(int eyear, int month, boolean useMonth)(Code)(Java Doc)
protected int[] handleCreateFields()(Code)(Java Doc)
protected DateFormat handleGetDateFormat(String pattern, Locale locale)(Code)(Java Doc)
protected DateFormat handleGetDateFormat(String pattern, ULocale locale)(Code)(Java Doc)
abstract protected int handleGetExtendedYear()(Code)(Java Doc)
abstract protected int handleGetLimit(int field, int limitType)(Code)(Java Doc)
protected int handleGetMonthLength(int extendedYear, int month)(Code)(Java Doc)
protected int handleGetYearLength(int eyear)(Code)(Java Doc)
public int hashCode()(Code)(Java Doc)
final protected int internalGet(int field)(Code)(Java Doc)
final protected int internalGet(int field, int defaultValue)(Code)(Java Doc)
final protected long internalGetTimeInMillis()(Code)(Java Doc)
final protected void internalSet(int field, int value)(Code)(Java Doc)
public boolean isEquivalentTo(Calendar other)(Code)(Java Doc)
final protected static boolean isGregorianLeapYear(int year)(Code)(Java Doc)
public boolean isLenient()(Code)(Java Doc)
final public boolean isSet(int field)(Code)(Java Doc)
public boolean isWeekend(Date date)(Code)(Java Doc)
public boolean isWeekend()(Code)(Java Doc)
final protected static int julianDayToDayOfWeek(int julian)(Code)(Java Doc)
final protected static long julianDayToMillis(int julian)(Code)(Java Doc)
final protected static int millisToJulianDay(long millis)(Code)(Java Doc)
protected int newerField(int defaultField, int alternateField)(Code)(Java Doc)
protected int newestStamp(int first, int last, int bestStampSoFar)(Code)(Java Doc)
protected void pinField(int field)(Code)(Java Doc)
protected void prepareGetActual(int field, boolean isMinimum)(Code)(Java Doc)
static Object register(CalendarFactory factory, ULocale locale)(Code)(Java Doc)
static Object register(CalendarFactory factory, ULocale locale, boolean visible)(Code)(Java Doc)
protected int resolveFields(int[][][] precedenceTable)(Code)(Java Doc)
final public void roll(int field, boolean up)(Code)(Java Doc)
public void roll(int field, int amount)(Code)(Java Doc)
final public void set(int field, int value)(Code)(Java Doc)
final public void set(int year, int month, int date)(Code)(Java Doc)
final public void set(int year, int month, int date, int hour, int minute)(Code)(Java Doc)
final public void set(int year, int month, int date, int hour, int minute, int second)(Code)(Java Doc)
public void setFirstDayOfWeek(int value)(Code)(Java Doc)
public void setLenient(boolean lenient)(Code)(Java Doc)
final void setLocale(ULocale valid, ULocale actual)(Code)(Java Doc)
public void setMinimalDaysInFirstWeek(int value)(Code)(Java Doc)
final public void setTime(Date date)(Code)(Java Doc)
public void setTimeInMillis(long millis)(Code)(Java Doc)
public void setTimeZone(TimeZone value)(Code)(Java Doc)
public String toString()(Code)(Java Doc)
static boolean unregister(Object registryKey)(Code)(Java Doc)
protected void validateField(int field)(Code)(Java Doc)
final protected void validateField(int field, int min, int max)(Code)(Java Doc)
protected void validateFields()(Code)(Java Doc)
protected int weekNumber(int desiredDay, int dayOfPeriod, int dayOfWeek)(Code)(Java Doc)
final protected int weekNumber(int dayOfPeriod, int dayOfWeek)(Code)(Java Doc)

Methods inherited from java.lang.Object
native protected Object clone() throws CloneNotSupportedException(Code)(Java Doc)
public boolean equals(Object obj)(Code)(Java Doc)
protected void finalize() throws Throwable(Code)(Java Doc)
final native public Class getClass()(Code)(Java Doc)
native public int hashCode()(Code)(Java Doc)
final native public void notify()(Code)(Java Doc)
final native public void notifyAll()(Code)(Java Doc)
public String toString()(Code)(Java Doc)
final native public void wait(long timeout) throws InterruptedException(Code)(Java Doc)
final public void wait(long timeout, int nanos) throws InterruptedException(Code)(Java Doc)
final public void wait() throws InterruptedException(Code)(Java Doc)

www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.