• 简介
    枚举,是java中的一种比较特殊的class,它继承了java.lang.Enum类,所以只能实现接口。枚举内的元素默认被public static final修饰。
  • 枚举示例
enum WorkDay {
    MON,TUEWED,THU,FRI,SAT,SUM;
}

public class EnumTest {

    public static void main(String[] args) {
        for (WorkDay workDay:WorkDay.values()) {
            System.out.println(workDay);
        }
    }
}

在Enum类里定义了两个方法:

  • 取得枚举索引:public final int ordinal();
  • 取得枚举的名字:public final String name();
  • 自定义枚举构造函数
    除了使用 Enum 本身的方法,我们还可以自定义 Enum 对象的属性,重写 WorkDay 的构造方法,构造方法必须私有化.
enum WorkDay {
    MON(1),TUE(2),WED(3),THU(4),FRI(5),SAT(6),SUM(7);
    private int value;
    private WorkDay(int value){
        this.value=value;
    }

    public int getValue(){
        return value;
    }
}

public class EnumTest {

    public static void main(String[] args) {
        WorkDay mon=WorkDay.MON;
        System.out.println(mon.ordinal()+":"+mon.name());
        System.out.println(mon.getValue());
    }
}