【发布时间】:2014-12-19 04:57:50
【问题描述】:
在为实现接口的类使用 @Override 注释时,我在 Eclipse 中遇到编译错误。
JDK 合规级别设置为 1.7。
我用的是最新版的jdk7。
错误:“{classname} 类型的方法 {methodname} 必须覆盖超类方法”
public interface DataDictionary {
public Map<String, ? > getAllEntries(String dictionaryName);
...
...
}
public class StringDictionary implements DataDictionary {
@Override // this generates the error
public Map<String, ?> getAllEntries(String dictionaryName) {
// some implementation
return dataDictEntries;
}
【问题讨论】:
-
您没有正确覆盖。这就是我们所能说的。
-
相关代码可以更容易地找到有用的答案。
-
我正在实现一个接口,该项目按预期完美运行。只有当我添加 @Override 注释时它才会出错。
-
您的超类是否具有与您要覆盖的签名相同的方法?能否请您发布您的代码?
-
你确定
Map在接口和实现它的类中指的是同一个类型吗?