我想实现一个具有内部接口的接口。我有覆盖setter方法的问题。 这是我的问题草案:
接口层次结构:
public interface A {
public interface B {}
public void setBs(List<B> list);
}
实现:
public class AImpl implements A {
private List<BImpl> listOfBs;
public static class BImpl implements B {}
@Override
public void setBs(... list) { listOfBs = list }
}
setBs(... list)
方法参数的类型应该是什么? List<? extends B>
不会覆盖超类的方法。
答案 0 :(得分:1)
正如fantarama所述,签名应为public void setBs(List<B> list)
。
如果您在IDE或构建框架中收到错误,请确保正确设置了java编译器和目标版本。