3

のJavadocを読むと、その署名が私が通常使用しているものではないことEnumがわかります。また、values()メソッドのjavadocもありません。これらのメソッドは実際にはコンパイラーによって自動的に生成されることを読みました。だから私の質問は、なぜこれらのメソッドがクラス自体で静的メソッドとして宣言されていないのですか?コンパイラによる方法のようにメソッドを含める必要はありますか?なぜこの余分な抽象化レイヤーなのか?valueOf()Enum

4

1 に答える 1

9

Enumこれらのメソッドは、ではなく、作成している型のEnumサブクラスで宣言する必要がありenumます。特に静的メソッドはインスタンスメソッドのように継承しないため、他の方法で追加することはできません。

于 2013-03-16T18:02:26.327 に答える