列挙型をサブクラス化して新しい要素を追加できますか? 質問する

列挙型をサブクラス化して新しい要素を追加できますか? 質問する

既存の列挙型を取得し、次のように要素を追加したいと思います。

enum A {a,b,c}

enum B extends A {d}

/*B is {a,b,c,d}*/

これはJavaで可能ですか?

ベストアンサー1

いいえ、Java ではこれを行うことはできません。他のことは別として、dはおそらく のインスタンスになりますA(「拡張」の通常の考え方を考えると)。しかし、 についてしか知らないユーザーにはAそれがわかりません。これでは、列挙型がよく知られた値のセットであるという点が台無しになります。

これをどのように使用したいかについて詳しく教えていただければ、代替のソリューションを提案できる可能性があります。

おすすめ記事