以下代码在public void control() {
附近发出错误。
EClipse还提供了删除@Override注释的提示。我去了docs.oracle,发现如果标有@Override 的方法无法正确覆盖其中一个超类中的方法,则编译器会生成错误。
我不明白“无法正确覆盖”是什么意思?
public class PersistenceFlowController implements controllers.FlowController {
@Override
public void control() {
// Do some works here
}
}
package controllers;
public interface FlowController {
void control();
}
答案 0 :(得分:18)
在JDK 1.5中,@Override
只能应用于父类的方法。在JDK 1.6及更高版本中,它也可以用于接口方法。我的猜测是你已经为JDK 1.5编译器合规设置了Eclipse。您可以在项目属性对话框的“Java编译器”选项卡中检查或更改它。