なぜ Java 言語で aclassが an を拡張できないのか疑問に思っていenumます。
私は an のenum拡張について話しているのenumではありません (Java には多重継承がなく、それはenum暗黙的に extendsであるため、実行できません)、追加の列挙値ではなく、追加のメソッドのみを追加するためのjava.lang.Enumクラスです。 .extendsenum
何かのようなもの:
enum MyEnum
{
ASD(5),
QWE(3),
ZXC(7);
private int number;
private asd(int number)
{
this.number=number;
}
public int myMethod()
{
return this.number;
}
}
class MyClass extends MyEnum
{
public int anotherMethod()
{
return this.myMethod()+1;
}
}
このように使用するには:
System.out.println(MyClass.ASD.anotherMethod());
それで、誰かがこの制限の根拠を提供できますか (または、適切な JLS セクションを教えてくれますか)?