JDK5新特性_4.构造方法创建枚举

1.枚举可以通过指定构造方法来创建

public class T4_EnumMethod {
    public static void main(String[] args) {
        System.out.println(WeekDay.SUM);
    }

    public enum WeekDay {
        SUM(1), MON, TUES, WEN, THIR, FIR, SAT;
        private WeekDay() {
            System.out.println("first");
        }

        private WeekDay(int day) {
            System.out.println("second");
        }
    }
}

控制台输出:

second
first
first
first
first
first
first
SUM

很多人会疑问:为什么打印出了这么多first?

其实是因为 

SUM(1), MON, TUES, WEN, THIR, FIR, SAT;
这些对象是静态的,在枚举被加载的时候就会创建出来,所以会执行7次构造方法

 

posted @ 2018-01-19 14:05  Dylan丶Djm  阅读(117)  评论(0编辑  收藏  举报