需求:
在将自己开发的服务器平台测试工具(gulu)提供给布可MM使用的时候发现,所有继承于接口的实现类的实现方法均报错,提示需要must override a superclass method。 之后发现,是每个实现类上的@Override所引发的,只需注释掉@Override就不会报错了。这是为什么呢?
解决方案:
后来在与宗洛同学、饮霜同学探讨之后才发现,是JDK Compliance版本引发的血案。将JDK Complier compliance level设置为1.6的时候,自动生成的接口实现类会默认的添加@Override。而1.6版本之前则不会自动生成,且不允许在接口实现类中的实现方法上添加@Override。
OK,由JDK Compliance版本引发的@Override血案介绍完毕,欢迎拍砖。转发请备注转自:100continue.iteye.com。 谢谢。