[解決済み】エラー「No enclosing instance of type Foo is accessible」の原因と修正方法について教えてください。
2022-01-20 03:13:06
質問内容
次のようなコードがあります。
class Hello {
class Thing {
public int size;
Thing() {
size = 0;
}
}
public static void main(String[] args) {
Thing thing1 = new Thing();
System.out.println("Hello, World!");
}
}
知っている
Thing
は何もしませんが、私の Hello, World プログラムはこれ無しでも問題なくコンパイルできます。私の定義したクラスだけが失敗しているのです。
そして、コンパイルを拒否しています。次のようになります。
No enclosing instance of type Hello is accessible."
を作成する行で、新しいThingを作成します。どちらかだと思います。
- システムレベルに問題がある(DrJavaまたは私のJavaインストールに)または
- Javaで動作するプログラムの組み方について、基本的な誤解があるのですが。
何かアイデアはありますか?
解決方法は?
static class Thing
を実行すると、プログラムが動作するようになります。
そのままでは
Thing
の特定のインスタンスと関連付けられています。
Hello
(というのは、(たとえ一度も使用したり参照したりしていなくても)エラーになります。
new Thing();
を持たずに、特定の
Hello
のインスタンスがスコープに含まれます。
代わりに静的クラスとして宣言すれば、それは "nested" クラスとなり、特定の
Hello
のインスタンスを作成します。
関連
-
[解決済み】Android Studio クラス org.codehaus.groovy.runtime.InvokerHelper を初期化できませんでした。
-
[解決済み】非閉鎖文字リテラルエラー
-
[解決済み】JLabelのテキストを中央に配置するには?
-
[解決済み】keytoolエラー 鍵屋が改ざんされたか、パスワードが不正確だった場合
-
[解決済み】Eclipseで「JUnitテストが見つかりませんでした。
-
[解決済み】ソースルート外のJavaファイル intelliJ
-
[解決済み] JavaでSSLピアが正しくシャットダウンされない
-
[解決済み】どういう意味か。Serializableクラスがstatic final serialVersionUIDフィールドを宣言していないとは?重複している] [重複している] [重複している] [重複している
-
[解決済み] 汎用型Tのクラスインスタンスを取得する方法を教えてください。
-
[解決済み] Hibernateの「オブジェクトは保存されていないトランジェントインスタンスを参照しています - フラッシュする前にトランジェントインスタンスを保存してください」エラーの修正方法
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] if / for / while 内で "Missing return statement" が発生する。
-
[解決済み】Android Studio クラス org.codehaus.groovy.runtime.InvokerHelper を初期化できませんでした。
-
[解決済み】Java、"変数名 "を変数に解決することができない
-
[解決済み】「java -cp」と「java -jar」の違い?
-
[解決済み】keytoolエラー 鍵屋が改ざんされたか、パスワードが不正確だった場合
-
[解決済み】java 'jar'が内部コマンドまたは外部コマンドとして認識されない。
-
[解決済み】スレッド "main "での例外 java.util.NoSuchElementException
-
[解決済み】Javaのswitch文。定数式が必要だが、定数である
-
[解決済み】Java LinkedListでNodesを使用する
-
[解決済み] 包含するインスタンスにアクセスできない。型の包含するインスタンスで割り当てを修飾する必要があります(例えば、x.new A()、ここでxはのインスタンスです) [重複]。