Здравствуйте.
Ошибка при компиляции с OpenJDK.
Ситуация следующая. Есть нижеприведённый код:
class MyAction extends AbstractAction {
@Override
public void actionPerformed(ActionEvent arg0) {
// что-то делаем...
}
}
Вроде всё нормально, и Eclipse ошибку не показывает. Но при попытке компиляции из консоли выскакивает ошибка
"The method actionPerformed(ActionEvent) of type MyClass.MyAction must override a superclass method".
Такая ошибка обычно появляется в тех случаях, когда не совпадает сигнатура или тип возвращаемого переопределяемой функцией значения, или, что то же самое, при помещении Override над методом, который не имеет "прототипов" в классе-родителе. Во-вторых, IDE такие ошибки отлавливает, подчёркивает и ничего не хочет компилировать. А здесь всё выглядит нормально. Что характерно, с обычным JDK эта ошибка не появляется. Структура пакетов там, насколько я помню, та же самая, что и в стандартном JDK - java.awt.event.ActionEvent. Также проверил, какие java-библиотеки вообще видит Eclipse, оказалось, что только OpenJDK. Кто-нибудь сталкивался с подобным?
Ответ
class MyAction extends AbstractAction { public MyAction() { super(); } @Override public void actionPerformed(ActionEvent arg0) { // что-то делаем... } }
Комментариев нет:
Отправить комментарий