Почему не расширяется от Enum <E расширяет Enum <E >>
Я наткнулся на следующую проблему, которую я не могу расширить и реализовать из этого класса, который определен в Java 1.5 (пакет java.lang)
<code>public abstract class Enum<E extends Enum<E>> {... }.. </code>
Проблема, которую я имею, состоит в том, чтобы создать мой собственный тип enum, который имеет разные порядковые значения. Я не хочу реализовывать это, используя другое имя ординала, например, getCode () и т. Д. Поэтому я подумал, что смогу расширить этот класс.
<code>public final class XYZ extends Enum<XYZ> { //Does not work. // A("A", 1), B("B", 7); . } </code>
Я знаю, что могу сделать следующее:
<code>public enum NEWEnum { A(1), B(7); private int code; private NEWEnum(int code) { this.code = code; } public int getCode() { return this.code; } } </code>
Я бы предпочел использовать обычные имена в Enum, такие как ordinal () и name ().