[解決済み] Javaでは、クラス内のenum型はstaticですか?
2022-07-18 08:18:30
質問
enumの内部からは、内部クラスのように周囲のクラスのインスタンスメンバにアクセスすることができないようです。これは、enumが静的であるということでしょうか?周囲のクラスのインスタンスのスコープにアクセスすることはできませんか、それともインスタンスを必要な列挙型のメソッドに渡さなければなりませんか?
public class Universe {
public final int theAnswer;
public enum Planet {
// ...
EARTH(...);
// ...
// ... constructor etc.
public int deepThought() {
// -> "No enclosing instance of type 'Universe' is accessible in this scope"
return Universe.this.theAnswer;
}
}
public Universe(int locallyUniversalAnswer) {
this.theAnswer = locallyUniversalAnswer;
}
}
どのように解決するのですか?
はい、ネストされた列挙型は暗黙のうちに静的です。
から 言語仕様 8.9節 :
ネストされた列挙型は暗黙のうちに 静的である。ネストしたenum型を明示的に宣言することは可能です。 ネストしたenum型を明示的に宣言することは を静的と宣言することは可能です。
関連
-
[解決済み] Java enumのメンバーを比較する:==またはequals()?
-
Javaがテキストファイルを読み込む
-
[解決済み] JavaにおけるHashMapとHashtableの違いは何ですか?
-
[解決済み] Javaで文字列値からenum値を取得する方法
-
[解決済み] Java内部クラスと静的ネストされたクラス
-
[解決済み] Javaクラスにおけるcanonical name、simple name、class nameの違いは何ですか?
-
[解決済み] Javaにおける静的クラス
-
[解決済み] Javaでenumを繰り返し処理するためのforループ
-
[解決済み】なぜenumクラスはプレーンなenumより好ましいのですか?
-
[解決済み] Java enumとpublic static finalフィールドを持つクラスとでは、どのような利点がありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
NullPointerException - java.lang.
-
Uncaught ReferenceError: は定義されていません。
-
CertificateException: XXXに一致するサブジェクトの代替DNS名が見つかりません 解決策
-
API の戻り値を処理するために ResponseEntity を使用する
-
コンストラクタDate()が未定義である問題
-
代入の左辺は変数でなければならない 解答
-
Javaがエラーで実行される、選択が起動できない、最近起動したものがない
-
Java JDKのダイナミックプロキシ(AOP)の使用と実装の原理分析
-
Zipファイルの圧縮・解凍にantを使用する
-
CAS 5.1.8でhttpをサポートし、認証されていない認可サービスエラーのプロンプトが表示される問題を解決した。