Fruit extends Food类但是
List<? super Fruit>list为什么不能添加Food f=new Food();这个对象?实在是没想明白
List<? extends E>表示该list集合中存放的都是E的子类型(包括E自身),由于E的子类型可能有很多,但是我们存放元素时实际上只能存放其中的一种子类型
Fruit extends Food
不是
Food extends Fruit
如果要是List<? super Fruit>可以添加Food,那么它还可以添加Object了,岂不是什么都可以添加了。
主要是你从List里面get等这类操作的时候会有问吧,编译器不知道它
? extend E表示: ?是E的子类 这个list只能放E的子类而不是父类