定义
将一组有限集合创建为一种新的类型,集合里面的值可以作为程序组件使用;
简单枚举
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();
}