一 簡單應用
package cn.xy.enum;
public enum trafficlamp
trafficlamp red = trafficlamp.red;
system.out.println(red);
system.out.println(red.name());
system.out.println(red.ordinal());
system.out.println(trafficlamp.valueof("yellow"));
trafficlamp ts = trafficlamp.values();
for (trafficlamp t : ts)
結果red
red0
yellow
redgreen
yellow
二 複雜應用
package cn.xy.enum;
public enum trafficlampcomplex
@override
public string getvalue()
},green(10)
@override
public string getvalue()
},yellow(5)
@override
public string getvalue()
};/**
* 時長
*/private int time;
trafficlampcomplex()
trafficlampcomplex(int time)
/*** 下乙個燈
* @return
*/public abstract trafficlampcomplex nextlamp();
/*** 取值
* @return
*/public abstract string getvalue();
public int gettime()
public void settime(int time)
}trafficlampcomplex tcred = trafficlampcomplex.red;
system.out.println(tcred.nextlamp());
system.out.println(tcred.getvalue());
結果green
紅燈,時長10
三 提示
如果理解該例子有困難,請參看本部落格的《jdk1.5新特性5之列舉之模擬列舉型別》
woshixuye111
JDK 1 5 新特性 列舉
1 class myenum 56 public static final myenum e1 new myenum 7public static final myenum e2 new myenum 8public static final myenum e3 new myenum 9 1011 ...
jdk1 5新特性之可變引數
jdk1.5新特性之 可變引數 需求 定義乙個函式做加法功能 函式做幾個資料 的加法功能是不確定 可變引數的格式 資料型別.變數名 可變引數要 注意的細節 1.如果乙個函式 的形參使用上了可變引數之後,那麼呼叫該方法的時候可以傳遞引數也可以不傳遞引數。2.可變引數實際上是乙個陣列物件。3.可變引數必...
JDK1 5的新特性
1.靜態匯入 靜態匯入得是靜態方法或靜態類 2.可變引數 overload與override的區別 overload是過載,override是重寫 可變引數就是overload 可變引數的特點 1.可變引數中的.只能出現在引數列表的最後 2.可變引數中的.位於變數型別和變數名之間,前後有無空格都可以...