您的位置:首页 > 职场人生

黑马程序员_java学习日记_Java高新技术_枚举

2012-07-01 13:43 489 查看
--------  android培训,java培训java学习型技术博客、期待与您交流! -------
枚举

  枚举(Enum)可以使用构造方法,构造方法必须是私有的(private)。
    枚举(Enum)可以使用成员变量和成员方法
    例1.这是在5.0之前使用模式做出枚举
    finalclass Season
     {public static final Season SPRING=newSeason();
        public static final Season WINTER=newSeason();
        public static final Season SUMMER=newSeason();
       public static final Season AUTUMN=newSeason();
       private Season(){...}
      }
   例2.使用5.0的新特性枚举类
    importjava.lang.Enum.*;
  enum Season2
    {  SPRING,
        SUMMER,   
    AUTUMN,
        WINTER
    }
  经过编译运行,例1和例2完全是等价的。
public class EnumTest {

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
WeekDay1 weekDay = WeekDay1.MON;
System.out.println(weekDay.nextDay());

WeekDay weekDay2 = WeekDay.FRI;
System.out.println(weekDay2);
System.out.println(weekDay2.name());
System.out.println(weekDay2.ordinal());

System.out.println(WeekDay.valueOf("SUN").toString());
System.out.println(WeekDay.values().length);

new Date(300){};
}

public enum WeekDay{

SUN(1),MON(),TUE,WED,THI,FRI,SAT;
private WeekDay(){System.out.println("first");}
private WeekDay(int day){System.out.println("second");}
}

public enum TrafficLamp{
RED(30){
public  TrafficLamp nextLamp(){
return GREEN;
}
},
GREEN(45){
public  TrafficLamp nextLamp(){
return YELLOW;
}
},
YELLOW(5){
public  TrafficLamp nextLamp(){
return RED;
}
};
public abstract TrafficLamp nextLamp();
private int time;
private TrafficLamp(int time){this.time = time;}
}

}
--------  android培训,java培训java学习型技术博客、期待与您交流! -------
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息