猿问

可以枚举枚举以添加新元素吗?

可以枚举枚举以添加新元素吗?

我想采用现有的枚举并添加更多元素,如下所示:

enum A {a,b,c}enum B extends A {d}/*B is {a,b,c,d}*/

这在Java中可行吗?


德玛西亚99
浏览 837回答 3
3回答

杨__羊羊

不,你不能用Java做到这一点。除了其他任何东西之外,d大概可能是A(给出“扩展”的正常概念)的一个实例,但是只知道A它的用户不会知道它 - 这会使枚举点成为一个众所周知的集合值。如果您可以告诉我们更多关于您希望如何使用它的信息,我们可以建议其他解决方案。

PIPIONE

推荐的解决方案是可扩展的枚举模式。这涉及创建一个界面并使用当前使用枚举的地方。然后使枚举实现接口。您可以通过使新的枚举也扩展接口来添加更多常量。
随时随地看视频慕课网APP

相关分类

Java
我要回答