public enum A {
//枚举类的第一行必须是枚举对象的名字
X, Y , Z;
private String name;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public class Test {
public static void main(String[] args) {
A a = A.X;
System.out.println(a);
//1.枚举类的构造器是私有的,不能对外创建对象
//new A();
//2.枚举类的第一行都是常量,记住的是枚举类的对象
//3.枚举类提供一些额外的API
A[] allValues = A.values();//拿到全部对象
A a1 = A.valueOf("Z");
System.out.println(a1.name());
}
}
抽象枚举
public enum A {
X("123") {
@Override
public void run() {
System.out.println(X.getName() + "run");
}
}, Y() {
@Override
public void run() {
}
};
A(){}
private String name;
A(String name) {
this.name = name;
}
public abstract void run();
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}