问题描述
我们都知道这个被封装起来了,sun只提供了接口,但是我不知道是不是开源,网上搜没搜到。我最近在做android的日历,android下的一些获取日期的接口【如getDayAt(introw,intcolumn)】会用到java.util.calendar里面的get(intfield)方法,但是我不太明白其中的参数的意思【如calendar.get(7)】。java的docs里是这样解释的:get(intfield)返回给定日历字段的值。在lenient模式下,所有日历字段都被标准化。在non-lenient模式下,所有日历字段都是经过验证的,如果任何日历字段有超出范围的值,则此方法抛出一个异常。标准化和验证都是通过#complete()方法处理的,这个过程与日历系统有关。field给定的日历字段。return给定日历字段的值。ThrowsArrayIndexOutOfBoundsException:zh_cn如果指定字段超出范围(field<0||field>=FIELD_COUNT)。Seealsoset(int,int),complete()PS:我知道field是YEARMONTH这些日期,但是我想知道get(7)具体是代表什么,我估计是一个数组,只是被封装起来了,所以想问问大家看看能不能有底层的代码可以看看。
解决方案
解决方案二:
这个源码最好是到oracle官方网站下一个,放本机上,随时都能看,很方便
解决方案三:
unzip-p$JAVA_HOME/src.zipjava/util/Calendar.java
解决方案四:
unzip-p$JAVA_HOME/src.zipjava/util/Calendar.java|grep"publicfinalstaticint"publicfinalstaticintERA=0;publicfinalstaticintYEAR=1;publicfinalstaticintMONTH=2;publicfinalstaticintWEEK_OF_YEAR=3;publicfinalstaticintWEEK_OF_MONTH=4;publicfinalstaticintDATE=5;publicfinalstaticintDAY_OF_MONTH=5;publicfinalstaticintDAY_OF_YEAR=6;publicfinalstaticintDAY_OF_WEEK=7;publicfinalstaticintDAY_OF_WEEK_IN_MONTH=8;publicfinalstaticintAM_PM=9;publicfinalstaticintHOUR=10;publicfinalstaticintHOUR_OF_DAY=11;publicfinalstaticintMINUTE=12;publicfinalstaticintSECOND=13;publicfinalstaticintMILLISECOND=14;publicfinalstaticintZONE_OFFSET=15;publicfinalstaticintDST_OFFSET=16;publicfinalstaticintFIELD_COUNT=17;publicfinalstaticintSUNDAY=1;publicfinalstaticintMONDAY=2;publicfinalstaticintTUESDAY=3;publicfinalstaticintWEDNESDAY=4;publicfinalstaticintTHURSDAY=5;publicfinalstaticintFRIDAY=6;publicfinalstaticintSATURDAY=7;publicfinalstaticintJANUARY=0;publicfinalstaticintFEBRUARY=1;publicfinalstaticintMARCH=2;publicfinalstaticintAPRIL=3;publicfinalstaticintMAY=4;publicfinalstaticintJUNE=5;publicfinalstaticintJULY=6;publicfinalstaticintAUGUST=7;publicfinalstaticintSEPTEMBER=8;publicfinalstaticintOCTOBER=9;publicfinalstaticintNOVEMBER=10;publicfinalstaticintDECEMBER=11;publicfinalstaticintUNDECIMBER=12;publicfinalstaticintAM=0;publicfinalstaticintPM=1;
解决方案五:
不知道是谁告诉你这个类的源码被封起来看不了?你的jdk中的src.zip不是静静的躺在那里吗?