Java枚举

Java中的每个枚举都是java.lang.Enum的final子类,枚举类中的每个枚举常量都是该枚举类的一个实例。虚拟机载入枚举类时生成该枚举类的所有实例。定义枚举常量时,可以重写枚举类的成员方法及成员变量,重写的成员变量的作用域仅限于定义改枚举常量的方法块内部。

public enum Test1 {
    A("a"){
        private int n = 200;
        public void say(){
            System.out.println(n);//此处n=200, A.n=100
        }
    },B("B"),C("c");
    public static void main(String...s){
        A.say();
        System.out.println(Test1.A.n);
    }
    Test1(String s){
        System.out.println("This is Test1's constructor--!"+s);
    }
    
    public void say(){
        System.out.println("This is Test1!");
    }
    
    public int n=100;
}
输出:
This is Test1's constructor--!a
This is Test1's constructor--!B
This is Test1's constructor--!c
200
100

你可能感兴趣的:(Java枚举)