我偶然发现了以下问题,我无法从 Java 1.5(java.lang 包)中定义的此类扩展和实现
public abstract class Enum<E extends Enum<E>> {...
}..
我遇到的问题是创建我自己的具有不同序数值的枚举类型。我不想通过使用不同的序数名称来实现它,比如 getCode() 等。所以我想我可以去扩展上面的类。
public final class XYZ extends Enum<XYZ> { //Does not work.
//
A("A", 1),
B("B", 7);
.
}
我知道我可以做到以下几点:
public enum NEWEnum {
A(1),
B(7);
private int code;
private NEWEnum(int code) {
this.code = code;
}
public int getCode() {
return this.code;
}
}
我宁愿在 Enum 中使用通常的命名,例如 ordinal() 和 name()。