Javaコンパイラエラー:“ class、interface、またはenumが必要です”

1概要

このクイックチュートリアルでは、Javaコンパイラエラー__「クラス、インターフェイス、または列挙型の予想」について説明します。

このエラーの例をいくつか見て、それらを修正する方法を説明しましょう。

2置き忘れた中括弧

__“クラス、インターフェース、または列挙型の予想”エラーの根本的な原因は、通常、波かっこの位置が間違っていることです。これはクラスの後の余分な中括弧になることができます。クラスの外で誤って書かれたメソッドかもしれません。

例を見てみましょう。

public class MyClass {
    public static void main(String args[]) {
      System.out.println("Baeldung");
    }
}
}
----/MyClass.java:6: error: class, interface, or enum expected
}
^
1 error
----

上記のコード例では、最後の行に余分な "}" 中括弧があり、コンパイルエラーになります。削除すると、コードはコンパイルされます。

このエラーが発生する別のシナリオを見てみましょう。

public class MyClass {
    public static void main(String args[]) {
       //Implementation
    }
}
public static void printHello() {
    System.out.println("Hello");
}
----/MyClass.java:6: error: class, interface, or enum expected
public static void printHello()
^/MyClass.java:8: error: class, interface, or enum expected
}
^
2 errors
----

上記の例では、メソッド printHello() がクラス MyClass の外部にあるため、エラーが発生します。これを修正するには、閉じ中括弧 “}” をファイルの末尾に移動します。つまり、 printHello() メソッドを MyClass 内に移動します。

3結論

この簡単なチュートリアルでは、「クラス、インタフェース、または列挙型」というJavaコンパイラのエラーについて説明し、2つの根本的な原因を説明しました。