java基礎之列舉

2021-06-29 03:20:40 字數 792 閱讀 9896

讓某個型別的變數的值只能取若干個值中的乙個,否則,編譯器報錯。將原先執行時才能發現的問題提前到編譯時揭露。也是jdk1.5新特性

實現原理:

1、將建構函式私有化, 使其他人無法建立物件

2、定義預定數量的物件,並用public 和final、static修飾,供使用者呼叫

3、可以有若干具體或抽象方法,比如獲取下乙個元素的方法,可以定義為抽象,然後在各自建立物件時使用匿名內部類呼叫該方法,這樣可以省下if else的大量出現。

enum weekday

weekday wd = weekday. fri;
提供的方法

wd.tostring():

wd.name():

wd.ordinal():

靜態方法:

帶有抽象方法的列舉類**範例:

public

enum trafficlamp

},green(40)

},yellow(5)

},public

abstract trafficlamp nextlamp();//定義抽象方法供建立內部子類物件時重寫

private

int time ;

private

trafficlamp(int time)

}

Java基礎之列舉

列舉 列舉enum 列舉就是要讓某個型別的變數的取值,只能為若干個固定值中的乙個,否則,編譯器報錯 列舉可以讓編譯器在編譯時就可以控制源程式中填寫的非法值,普通變數的方式在開發階段無法實現這一目標。列舉是一種特殊的類,列舉中的每乙個元素都是乙個例項物件 用普通類如何實現列舉功能,定義乙個weekda...

Java基礎之 列舉

乙個示例的列舉的定義 public enum producttype public static producttype getportraitbyid string name throw new illegalargumentexception illegal argument public st...

Java之列舉型別

用乙個例子來說明 在程式中規定交通燈的取值只能是 red,green,yellow 取其他值就會報錯,並且還能根據當前顏色知道下個顏色.怎麼實現?一 用普通類來實現 public abstract class trafficlamp 取得下個燈 public abstract trafficlamp...