8

我在这里有一个困惑。

如果我不能将一个类声明为静态,那么枚举是如何工作的?它看起来像一个静态类,因为它自己被实例化并且可以在任何地方调用。看起来我可以像使用其他静态字段一样使用枚举。

使用enum是否安全?

4

2 回答 2

11

enum类型自动是静态的。你不能有一个非static枚举,所以static隐含了。

JLS 8.9

嵌套枚举类型是隐式静态的。可以将嵌套枚举类型显式声明为静态。

于 2012-12-20T18:17:50.983 回答
0

您在枚举类型中声明的每个枚举都是枚举类型的静态成员。枚举变量的类型是枚举的类型,简而言之,它们是自类型的。

于 2012-12-20T18:22:39.460 回答