在 java/groovy 中拆分出非常大的枚举

Splitting out very large enums in java/groovy

我目前正在 Groovy 设计一个模型。 因此,我需要在模型上映射静态数量的值。

例如:

class Model () {
    StaticValues values
}

最初,我想将其实现为一个枚举。

enum StaticValues {
    VALUE!, VALUE2, ...
}

问题是,它最终会变得非常大,它可能包含数百个元素。由于子类化枚举是不可能的,是否有解决此问题的替代方法?

StaticValues 是简单的硬编码常量。这些值甚至可以表示为纯字符串。

但是,这些值将用作查询此模型的键。所以它只包含有效值很重要。这就是为什么我打算制作值字段 "typed" 而不是字符串。

你可以用 enum 实现一个接口,你可以有多个 enum 实现这个接口或一个子 class.

顺便说一句,几百个枚举应该不是问题。