尝试显式实例化枚举类型是编译时错误
(§15.9.1).Enum中的最终克隆方法确保永远不会克隆枚举常量,并且序列化机制的特殊处理可确保不会因反序列化而创建重复实例.禁止对枚举类型进行反射实例化.总之,这四件事确保除了枚举常量定义的实例之外不存在枚举类型的实例.
除了enum声明之外,有更多枚举类型实例的缺点是什么?
缺点是你丢弃了枚举的静态可检查性.
您可以静态地确保switch
枚举值确实处理所有情况.您可以静态地确保使用枚举调用方法可以做到理智.您可以静态地确保资源包中的每个枚举值都有一个转换.还有更多的东西.
您可以确保equals()
等同于==
用枚举.
所有这些都定义了一个enum
.
如果你想要一个与枚举"相似"的东西,那就写下来:它不是太难.
归档时间: |
|
查看次数: |
643 次 |
最近记录: |