すべての Java プログラマは、初心者であろうと経験者であろうと、コードを作成するときに多くのエラーに遭遇します。一般に、これらのエラーは実行時エラーとコンパイル時エラーに分類されます。実行時エラーは、コンパイルが成功した後にコードを実行すると発生しますが、コンパイル時エラーはコンパイル中に発生します。
予期されたクラス、インターフェイス、または列挙型は、ソース コードのコンパイル中にスローされたエラーです。これはさまざまな理由で発生する可能性がありますが、その 1 つは中括弧の位置が間違っていることです。この記事では、このエラーの原因と、クラス、インターフェイス、または列挙で予期されるエラーを修正するための対応する方法を調べます。
コンパイル エラーは、コードが Java プログラミング言語の構文規則に従っていないことを示します。コンパイラーによって生成されたクラス、インターフェース、または列挙型の予期されたエラーは、Java コンパイラーが予期しないコードをコードに記述したことを意味します。
クラス、インターフェイス、または列挙型エラーの予想される原因は次のとおりです。
中括弧の問題
未宣言のクラス
クラススコープ外のメソッドの定義
ソフトウェア パッケージの問題
これらの問題を 1 つずつ説明し、このエラーを修正する方法について説明します。
前述したように、クラス、インターフェイス、または列挙型の予期されるエラーが発生する最も一般的な理由は、中括弧が冗長であるか、中括弧が正しく配置されていないことです。おそらく、プログラマが中括弧を見逃すのは非常に一般的であるため、この理由でこのエラーが頻繁に発生する可能性があります。
コードをクラス、インターフェイス、または列挙型に置く必要があるため、コードに誤って余分な中括弧を追加すると、Java コンパイラはクラス、インターフェイス、または列挙型を期待します。
次の例は、中括弧を間違って配置した場合に発生するエラーを示しています。
rreepublic class Example1 { public static void main(String[] args) { int nums = 0; nums++; // incrementing the value System.out.println("Incremented value: " + nums); } } } // adding extra curly brace to generate the error
次の例は、コードから無関係な中括弧を削除してクラス、インターフェイス、または列挙エラーを修正する方法を示しています。
rreeExample1.java:8: error: class, interface, enum, or record expected } // adding extra curly braces to generate the error ^ 1 error
クラスの定義を忘れて、クラスにコードをまったく含めない状況が発生する可能性があります。この場合、Java ガイドラインに従って、すべてのコード ブロックをクラス内で定義する必要があるため、クラス、インターフェイス、または列挙エラーが発生する可能性があります。したがって、各コードブロックをクラス内でラップするようにしてください。
このエラーが発生するもう 1 つの理由は、クラス スコープの外でメソッドを誤って定義したことです。
次の例では、エラーを生成するために「main()」メソッドを意図的にクラスの外に配置しています。
rreepublic class Example2 { public static void main(String[] args) { int nums = 0; nums++; // incrementing the value System.out.println("Incremented value: " + nums); } }
前のエラーを修正するには、例に従ってクラス内に「main()」メソッドを追加します。
rreeIncremented value: 1
Java プログラマが 1 つのソース コードで複数のパッケージを宣言する場合、この問題が発生することがあります。
この例では、エラーを生成する 2 つのパッケージを宣言します。
リーリーpublic class Example3 { } // from below lines we will get error public static void main(String[] args) { int nums = 0; nums++; // incrementing the value System.out.println("Incremented value: " + nums); }
この例では、定義されたパッケージの 1 つを削除して、クラス、インターフェイス、または列挙型の予期されるエラーを修正します。
rreeExample3.java:3: error: class, interface, enum, or record expected public static void main(String[] args) { ^ Example3.java:5: error: class, interface, enum, or record expected nums++; // incrementing the value ^ Example3.java:6: error: class, interface, enum, or record expected System.out.println("Incremented value: " + nums); ^ Example3.java:7: error: class, interface, enum, or record expected } ^ 4 errors
以上がJava で「クラス、インターフェイス、または列挙型が必要です」エラーを修正するにはどうすればよいですか?サンプル付きの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。