[解決済み] No enclosing instance of type Foo is accessible "というエラーの原因と対処法を教えてください。
2022-01-28 13:56:35
質問内容
次のようなコードがあります。
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
のインスタンスを作成します。
関連
-
[解決済み】Hibernateエラー:同じ識別子値を持つ別のオブジェクトがすでにセッションに関連付けられました。
-
[解決済み】不正なエスケープ文字"㊧"について
-
[解決済み】Doubleはdereferencedできない?
-
[解決済み] メソッドがそのスーパークラスのメソッドをオーバーライドしない
-
[解決済み】デフォルトのキーストアファイルが存在しない?
-
[解決済み】ソースルート外のJavaファイル intelliJ
-
[解決済み】javaで無効な文字定数
-
[解決済み】どういう意味か。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" が発生する。
-
[解決済み】エラー:'if'のない'else'エラー
-
[解決済み】imageio.IIOException: 入力ファイルが読み込めない
-
[解決済み】宣言されたパッケージが期待されるパッケージと一致しない ""
-
[解決済み] hibernate のプロパティが見つかりません。
-
[解決済み】-XX:MaxPermSizeは何をするのですか?
-
[解決済み】java.io.IOException: 壊れたパイプ
-
[解決済み】Ubuntu: OpenJDK 8 - パッケージを見つけることができません。
-
[解決済み】koch snowflake java recursion
-
[解決済み] 包含するインスタンスにアクセスできない。型の包含するインスタンスで割り当てを修飾する必要があります(例えば、x.new A()、ここでxはのインスタンスです) [重複]。