枚举是一种特殊的类
枚举类的第一行只能罗列一些名称,这些名称都是常量,并且每个常量记住的都是枚举类的一个对象
枚举类的构造器都是私有的(写不写都是私有的),因此枚举类对外不能创建对象
枚举都是最终类,不可以被继承
枚举中,从第二行开始可以定义类的其他各种成员
编译器为枚举类新增了几个方法,并且枚举类都是继承:java.lang.Enum类的,从enum类也会继承到一些方法
抽象枚举
public enum B {
X(){
@Override
public void go() {
}
},Y("张三") {
@Override
public void go() {
System.out.println(getName()+"再跑~~~");
}
};
private String name;
B() {
}
B(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public abstract void go();
}
应用场景
用来表示一组信息,然后作为参数进行传输
public enum Constant2 {
BOY,GIRL;
}
public class Test {
public static void main(String[] args) {
check(Constant2.BOY);
}
public static void check(Constant2 sex){
switch (sex){
case BOY:
System.out.println("男生~~~");
break;
case GIRL:
System.out.println("女生~~~");
break;
}
}
}