在我尝试编译的以下代码中:
List<Animal> animals;
List<? extends Animal> some;
animals = some;
我收到以下错误:
Type mismatch: cannot convert from List<capture#2-of ? extends Animal> to List<Animal>
但是一个包含的列表<? extends Animal>
保证至少包含Animal
类型,那么为什么会出现这个错误呢?这是因为如果允许的话,我可以将任何随机子类对象Animal
放入“动物”列表中,还是别的什么?