今天学习Java觉得带构造函数的枚举挺有意思的!代码如下:
package com.jemsn.weekday;
public class test {
public static void main(String[] args) {
weekday mon = weekday.mon;
weekday tue = weekday.tue;
weekday thus = weekday.thus;
weekday fri = weekday.fri;
}
public enum weekday {
mon(), tue(2), wes(3), thus(), fri;
private weekday() {
System.out.println("no args");
}
private weekday(int i) {
System.out.println("have args " + i);
};
}
}
输出的结果如下:
---------------------------------------------------------------------------------------
no args
have args 2
have args 3
no args
no args
--------------------------------------------------------------------------------------
所以今天终于明白原来枚举就像类一样,可以有构造函数!并且上述枚举里的fri本身就是一个weekday对象!就像我们自己写的fri=new weekday()一样!
mon()就是执行不带参数的构造函数!