在Java中,想知道哪种解决方案是最佳的编码实践和性能?
因此,如果我创建了以下枚举,但是对于每种类型的枚举,它将仅用于一次。
public enum DifferType{
TypeA("TypeA", True, "Monthly", False),
TypeB("TypeB", False, "Daily",True),
TypeC("TypeC", True, "Yearly",False),
TypeD("TypeD", False, "Monthly",True)
TypeE("TypeE", True, "Yearly",False),
TypeF("TypeF", False, "Monthly",True),
TypeG("TypeG", True, "Yearly",False),
TypeH("TypeH", False, "Monthly",True)
}
或子类,何时可以使用它创建一个新对象并设置该字段?
public class DifferType{
public DifferType(String name, Boolean isDown, String frequency, String isLeft){
this.name = name;
this.isDown = down;
this.frequency = frequency;
this.isLeft = isLeft;
}
}
DifferType TypeA = new DifferType("TypeA", True, "Monthly", False);
DifferType TypeB = new DifferType("TypeB", False, "Daily",True)
.....etc
它们有不同的用途。当您可以枚举(因此得名)时,enum
通常用于某些Object
的所有可能或有意义的值。因此,如果TypeA
... TypeH
覆盖all可能的值,则enum
最佳。如果您仅提供一些示例或常用示例,则该类是[[可能最佳选择*。
enum
和interface
组合也适用于这种情况。如:interface ThingDoer {
void doThing();
}
enum CommonThingDoers implements ThingDoer {
_1() {
@Override
public void doThing() {}
},
_2() {
@Override
public void doThing() {}
} // etc...
}
允许扩展,但也说'这些是我目前看到的所有值。期望