本问题已经有最佳答案,请猛点这里访问。
Possible Duplicate:
When do you use Javp;#39;s @Override annotation and why?
由于此注释,我一直遇到不兼容问题。 反正有什么意义呢?
简单地覆盖方法和使用@override覆盖方法+注释之间有什么区别?
stackoverflow.com/questions/94361/
类似的帖子可能会有所帮助:stackoverflow.com/questions/8076008/
要引用@Override JavaDoc:
If a method is annotated with this annotation type but does not override a superclass method, compilers are required to generate an error message.
因此,一个好的答案是"防止在编译时出现潜在的运行时错误" :-)
干杯,
关键是如果您没有真正覆盖方法,则将引发错误。
例如,你有
public class SuperClass {
public void doSomething(int a) {
}
}
扩展时可能会出错
public class SubClass {
public void doSomething(String a) {
}
}
现在您是否相信您已经重新实现了超类方法,但是您刚刚添加了一个新方法。
在方法声明之前添加@Override,将显示错误,因此您知道出了点问题。
很清楚,方法应覆盖父方法。
如果遇到麻烦,则表明您在父类中进行了许多不兼容的更改(没有让您的IDE帮您完成),或者您正在使用Java 5.0编译代码,如果您正在实现接口,则不允许使用此注释。