Java Generic with ArrayList <?扩展 A> 添加元素
我有类 , 和 扩展 、 扩展 和 扩展 。A
B
C
D
B
A
C
A
D
A
我有以下每个,每个都有一些元素:ArrayList
ArrayList<B> b;
ArrayList<? extends A> mix = b;
我打算让变量包含 类型为 , 或 .我试图添加一个类型的元素,如下所示:mix
B
C
D
C
mix
mix.add(anElementOfTypeC);
但是IDE不允许我这样做,它说:
anElementOfTypeC 不能通过调用转换的方法转换为 CAP#1,其中 CAP#1 是新的类型变量:CAP#1 从捕获 ?扩展 A
我是否正确使用了 ?如何解决此问题?<? extends A>