import java.util.Calendar;
import java.util.GregorianCalendar;public class StringBufferDemo {
public static void main(String[] args) {
Calendar cal=null;
cal=new GregorianCalendar();
System.out.println(cal.get(Calendar.YEAR));
}}import java.util.Calendar;
import java.util.GregorianCalendar;public class StringBufferDemo {
public static void main(String[] args) {
Calendar cal=null;
cal=new GregorianCalendar();
System.out.println(Calendar.YEAR);
}}[/为什么前一个输出2011后面一个输出1;

解决方案 »

  1.   

    兄弟,你前一个输出的是年份,而后一个只是输出的是日期类中的一个静态变量YEAR而已
      

  2.   

    Calendar.YEAR 不是静态变量,而是静态常量
      

  3.   

    不知道楼主是不是常用C#写程序呀,这个和DateTime.Now里面的Now属性的意思是不一样的。
    楼上两位都是正解,YEAR是个静态常量,就像你在Java类里定义的:
    public static final int StaticValue = 1;
      

  4.   

    API是个好东西!啥不懂查哪里!
    java.util.Calendar 
     public static final int ALL_STYLES 0 
     public static final int AM 0 
     public static final int AM_PM 9 
     public static final int APRIL 3 
     public static final int AUGUST 7 
     public static final int DATE 5 
     public static final int DAY_OF_MONTH 5 
     public static final int DAY_OF_WEEK 7 
     public static final int DAY_OF_WEEK_IN_MONTH 8 
     public static final int DAY_OF_YEAR 6 
     public static final int DECEMBER 11 
     public static final int DST_OFFSET 16 
     public static final int ERA 0 
     public static final int FEBRUARY 1 
     public static final int FIELD_COUNT 17 
     public static final int FRIDAY 6 
     public static final int HOUR 10 
     public static final int HOUR_OF_DAY 11 
     public static final int JANUARY 0 
     public static final int JULY 6 
     public static final int JUNE 5 
     public static final int LONG 2 
     public static final int MARCH 2 
     public static final int MAY 4 
     public static final int MILLISECOND 14 
     public static final int MINUTE 12 
     public static final int MONDAY 2 
     public static final int MONTH 2 
     public static final int NOVEMBER 10 
     public static final int OCTOBER 9 
     public static final int PM 1 
     public static final int SATURDAY 7 
     public static final int SECOND 13 
     public static final int SEPTEMBER 8 
     public static final int SHORT 1 
     public static final int SUNDAY 1 
     public static final int THURSDAY 5 
     public static final int TUESDAY 3 
     public static final int UNDECIMBER 12 
     public static final int WEDNESDAY 4 
     public static final int WEEK_OF_MONTH 4 
     public static final int WEEK_OF_YEAR 3 
     public static final int YEAR 1 
     public static final int ZONE_OFFSET 15 
      

  5.   

    public static final int YEAR 1
      

  6.   

    Calendar.YEAR:
    域:public static final 使用这种方式定义的静态常量。
    可以单独作为值使用,也可以参照MAP的方式,作为一种获取VALUE的KEY值。也可理解为状态开关,当调用Calendar.YEAR的时候,就把Calendar的(GET)状态开关拨到1,取得值就是年份。而这个状态开关自身的值只是1而已。
      

  7.   


    Calendar.class 源码里的东西Calendar.YEAR是个定值常量
      

  8.   

    public static Calendar.YEAR=1;
    //我的是2012耶
      Calendar cal=null;
            cal=new GregorianCalendar();
            System.out.println(cal.get(Calendar.YEAR));