【发布时间】:2010-10-03 11:11:03
【问题描述】:
可以在运行时在 Java 中的枚举中添加和删除元素吗?
例如,我可以从文件中读取枚举的标签和构造函数参数吗?
@saua,这只是一个是否真的可以出于兴趣而做的问题。我希望有一些巧妙的方法来改变正在运行的字节码,也许使用BCEL 或其他东西。我还跟进了this question,因为我意识到我并不完全确定何时应该使用枚举。
如果我希望能够在运行时安全地更改内容,我非常相信正确的答案是使用确保唯一性的集合而不是枚举。
【问题讨论】:
-
通常,如果你想要这个,你就是在滥用它们。你能告诉我们你需要它做什么吗?
-
我的答案是在后台用HashMap实现的,所以可以保证唯一性。
-
FWIW,它有助于测试打开枚举的默认情况。