【发布时间】:2015-09-30 15:15:24
【问题描述】:
使用具有抽象类A 和接口I 和J 的库,当我扩展/实现类/接口时收到以下警告消息:
泛型类 J
缺少类型参数。
作为MWE,类如下(T和S是泛型类型参数):
public abstract class A {}
public interface I<T extends A> {
public <S extends T> void doStuff(J<? super S> param);
}
public interface J<T extends A> {
public void doOtherStuff();
}
这是我的课程:
public class AExtended extends A {}
public class IImplemented implements I<AExtended> {
@Override
public void doStuff(J param) {}
}
如下明确使用AExtended 类不能正确实现I 中的doStuff():
public class IImplemented implements I<AExtended> {
@Override
public void doStuff(J<AExtended> param) {}
}
【问题讨论】: