java覆盖的意义_关于覆盖:Java 1.6中@Override注释的意义是什么

本问题已经有最佳答案,请猛点这里访问。

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编译代码,如果您正在实现接口,则不允许使用此注释。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值