Почему не расширяется от 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 ().

Ответы на вопрос(5)

Ваш ответ на вопрос