我有一个这样的枚举:
public enum Gender {
FEMALE("F"),
MALE("M");
private String code;
private Gender(String code) {
this.code= code;
}
public String getCode() {
return code;
}
public static List<Gender> getGenders() {
return Arrays.asList(Gender.values());
}
}
有人问我为什么不这样做:
public enum Gender {
FEMALE("F"),
MALE("M");
public final String code; //change scope and put final
private Gender(String code) {
this.code= code;
}
public static List<Gender> getGenders() {
return Arrays.asList(Gender.values());
}
}
它更短,仍然保留了枚举的所有功能。
你认为这是个好主意吗?它是否打破了OOP原则?