定義
簡單枚舉
package enumTest;
public enum
Color1 color1 = Color1.RED;
Color1 color2 = Color1.RED;
System.out.println(color1 == color2);
for(Color1 color : Color1.values()){
System.out.println(color);
true
有構造方法的枚舉
public enum Color2 {
RED("紅色"), GREEN("綠色"), BLUE("藍色");//必須在第一行,否則報錯
private String desc;
Color2(String desc) {//要麼沒有權限通路修飾符,要麼為private
this.desc = desc;
}
}
有自定義方法的枚舉
package enumTest;
public enum Color3 {
RED("紅色"), GREEN("綠色"), BLUE("藍色");
private String desc;
Color3(String desc) {
this.desc = desc;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
public String toString() {
return this.desc;
}
}
有抽象方法的枚舉
package enumTest;
public enum Color4 {
RED() {
@Override
public void desc() {
System.out.println("紅色");
}
},
GREEN() {
@Override
public void desc() {
System.out.println("綠色");
}
},
BLUE() {
@Override
public void desc() {
System.out.println("藍色");
}
};
public abstract void desc();
}