为什么在Java中枚举的构造函数不能是protected或public?

13 浏览
0 Comments

为什么在Java中枚举的构造函数不能是protected或public?

整个问题就在标题中。例如:

enum enumTest {
        TYPE1(4.5, "string1"), TYPE2(2.79, "string2");
        double num;
        String st;
        enumTest(double num, String st) {
            this.num = num;
            this.st = st;
        }
    }

构造函数默认或者使用private修饰符都没有问题,但如果使用public或者protected修饰符,就会给我一个编译错误。

0