Перейти к основному содержимому

Ошибка компилятора Java: «ожидается класс, интерфейс или перечисление»

· 2 мин. чтения

1. Обзор

В этом кратком руководстве мы поговорим об ошибке компилятора Java «ожидается класс, интерфейс или перечисление». С этой ошибкой в основном сталкиваются разработчики, которые плохо знакомы с миром Java.

Давайте рассмотрим несколько примеров этой ошибки и обсудим, как их исправить.

2. Неуместные фигурные скобки

Основной причиной ошибки «ожидается класс, интерфейс или перечисление» обычно является неуместная фигурная скобка «}» . Это может быть дополнительная фигурная скобка после класса. Это также может быть метод, случайно написанный вне класса.

Давайте посмотрим на пример:

public class MyClass {
public static void main(String args[]) {
System.out.println("ForEach");
}
}
}
/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 «ожидается класс, интерфейс или перечисление» и продемонстрировали две вероятные основные причины.