以下代码
public interface IGiveUp
{
void surrender(List<Class> l);
}
public class GiveUp implements IGiveUp {
@Override public void surrender(List<Class> l) {}
}
编译得很好。但是当我向接口添加一个未使用的泛型类型参数时
public interface IGiveUp<X>
{
void surrender(List<Class> l);
}
它无法编译(javac 1.6.0_23)
IGiveUp.GiveUp is not abstract and does not override abstract method surrender(java.util.List)
如果我在实现中指定泛型,它将编译
public class GiveUp implements IGiveUp<Object>
或使方法参数成为非泛型类型的列表
void surrender(List l);