当前位置:首页 > 开发 > 编程语言 > 编程 > 正文

overrided方法编译错误

发表于: 2015-06-29   作者:kane_xie   来源:转载   浏览:
摘要: 问题描述: 在实现类中的某一或某几个Override方法发生编译错误如下: Name clash: The method put(String) of type XXXServiceImpl has the same erasure as put(String) of type XXXService but does not override it   当去掉@Over
  • 问题描述:

在实现类中的某一或某几个Override方法发生编译错误如下:

Name clash: The method put(String) of type XXXServiceImpl has the same erasure as put(String) of type XXXService but does not override it

 

当去掉@Override标签之后,编译错误如下:

The method put(String) of type XXXServiceImpl must override or implement a supertype method

 

而且并非所有的重写方法会报编译错误,而且报错的方法和没报错的方法之间找不出indicated differences,非常的蛋疼。。。

 

 

  • 问题原因:

XXXService(接口)中有编译错误,引用了一个已删除的并且不需要的类。

 

  • 解决方案:

删除接口XXXService中不存在的引用,XXXServiceImpl编译成功。

 

 

这个错误犯的很脑残,但确实困扰了我一个小时,因为接口和实现类不在同一个包里,而且注意力全都集中在实现类的编译错误上,再加上编译器的报错也不太友好,所以没发现接口有问题。有时确实会有这样的遭遇,一个问题花了很长时间没法解决,其实问题并不在问题本身,而是由其他问题引发,这个时候先从当前问题跳出来看一下,往往能找到原因。

overrided方法编译错误

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号