Enumerated Types

  • enum 是一种语言构造,用于定义类型安全的枚举,可在需要固定的一组命名值时使用。所有枚举都隐式扩展java.lang.Enum。枚举可以包含一个或多个枚举常量*,它们定义了枚举类型的唯一实例。枚举声明定义了一个* enum type *,它与类非常相似,因为它可能具有诸如字段,方法和构造函数之类的成员(有一些限制)。

由于枚举是类,因此反射不需要定义显式的java.lang.reflect.Enum类。特定于枚举的唯一反射 API 是Class.isEnum()Class.getEnumConstants()java.lang.reflect.Field.isEnumConstant()。大多数涉及枚举的反射操作与任何其他类或成员相同。例如,枚举常量在枚举上实现为public static final字段。以下各节说明如何将Classjava.lang.reflect.Field与枚举一起使用。

有关枚举的介绍,请参见Enum Types类。