public enum WeekDay
{
SUN(1),MON,TUE,WED,THI,FRI,SAT;
private WeekDay()
{
System.out.println("first");
}
private WeekDay(int day){System.out.println("sencond");}
}
枚舉總結
1.枚舉可以帶有(必須是私有的)構造方法、抽象方法
2但注意的是枚舉裏不管有什麼方法枚舉的元素都必須在枚舉裏的第一位然後最後一個枚舉元素後面加分號
3.只要用到枚舉類,枚舉類裏的元素都會初始化,調用無參的構造方法
4.那如果要調用有參的呢?在元素後面加括號!裏面傳入相應的類型參數
5.枚舉裏只有一個元素時,就可以作爲一種單例的實現方式。
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;
}
}
}