Java:枚举values()和valueOf(String)
发布时间:2020-12-14 05:59:17 所属栏目:Java 来源:网络整理
导读:为什么 javac将value()和valueOf(String)方法添加到正在定义的枚举类型中?将它们添加到Enum类本身不是更好吗? 我的意思是,如果我有一些像这样的枚举 enum FooEnum {ONE,TWO} javac在编译时将values()和valueOf(String)添加到FooEnum.我觉得有点奇怪.这背后
为什么
javac将value()和valueOf(String)方法添加到正在定义的枚举类型中?将它们添加到Enum类本身不是更好吗?
我的意思是,如果我有一些像这样的枚举 enum FooEnum {ONE,TWO} javac在编译时将values()和valueOf(String)添加到FooEnum.我觉得有点奇怪.这背后的原因是什么? 是否只是为了确保返回值/值的类型安全性还是还有其他什么?如果只是为了类型安全,那么Generics不会有帮助吗? 解决方法
它们是静态方法 – 如何将它们添加到Enum中?静态方法不是多态的.此外,在您提议的方案中,Enum的实施情况会如何? Enum本身并不知道价值 – 只有具体类型才有.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |