首先,如果这是现有问题的重复,我们深表歉意。不确定如何表达我的问题,所以这可能是我还没有找到明确答案的原因。本质上,我想知道以下是否被认为是好的做法,或者是否有更好的方法来做到这一点:
public enum ExampleEnum {
ENTRY_1(new ExampleCodedValue("entry1", "comment1")),
ENTRY_2(new ExampleCodedValue("entry2", "comment2")),
ENTRY_3(new ExampleCodedValue("entry3", "comment3")),
ENTRY_4(new ExampleCodedValue("entry4", "comment4"));
private ExampleCodedValue codedValue;
ExampleEnum(ExampleCodedValue codedValue) {
this.codedValue = codedValue;
}
public ExampleCodedValue getCodedValue() {
return codedValue;
}
}
class ExampleCodedValue {
private final String code;
private final String comment;
ExampleCodedValue(String code, String comment) {
this.code = code;
this.comment = comment;
}
}
最佳答案
这是一个完全合理的方法,但是,你不能这样做:
public enum ExampleEnum {
ENTRY_1("entry1", "comment1");
private final String entry;
private final String comment;
private ExampleEnum(String entry, String comment) {
...
}
}