Enum类型,如Joshua Bloch在Effective Java中所述

Ank*_*kit 5 java enums effective-java

请看这个链接.关于Enums,布洛赫先生说

Java的枚举类型是通过公共静态最终字段为每个枚举常量导出一个实例的类.

我阅读了Enum类文档,没有公共静态final字段,那么上述语句如何成立.请解释.谢谢

che*_*ohi 14

创建一个Test.java文件并写Test enum:

public enum Test {
    Hello
}
Run Code Online (Sandbox Code Playgroud)

编译这个类:javac Test.java,并用于javap Test获取编译的类:

public final class Test extends java.lang.Enum{
    public static final Test Hello;
    public static Test[] values();
    public static Test valueOf(java.lang.String);
    static {};
}
Run Code Online (Sandbox Code Playgroud)

你可以看到Test该类扩展Enum而且它有该public static final Hello字段.