eclipse使用问题记录—Java @override报错的解决方法

问题描述Java的Eclipse工程导入别人提供的工程时后编译总是@override报错,把@override去掉就好了,但不能从根本上解决问题,

《1》因为@override具有重载检查的作用,随意的删除这个作用将失效!

其具体的内部检查机制是:

java.lang.Override是一个marker annotation类型,它被用作标注方法。它说明了被标注的方法重载了父类的方法,起到了断言的作用。如果我们使用了这种annotation在一个没有覆盖父类方法的方法时,java编译器将以一个编译错误来警示告知。 
这个annotaton常常在我们试图覆盖父类方法而确又写错了方法名时发挥巨大的作用。
《2》有时候有@override的地方特别多。删除@override也是很浪费时间的
具体问题截图:
 接口


实现类

问题原因:
@Override注释在jdk1.5环境下只能用于对继承的父类的方法的重写,
但不能用于对实现的接口中的方法的实现。
(也就是jdk1.5的 @Override这个annOotation 并不把接口认为是超类 ,
也就是说 如果在1.5下要使用@Override 这个annotation 必须保证 被标注方法来源于class 而不是interface;

问题解决:
针对Jdk1.5的bug,在jdk1.6以后版本得到解决:
只需要将eclipse中项目的编译等级改为jdk1.6(包含jdk1.6)以上即可 
具体操作参考如下截图:
按照上图将jdk有默认jdk1.5改为jdk1.7后即可;
修改后效果图:之前的@override报错消失了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Coder_Boy_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值