List<? super T>
和之间有什么区别List<? extends T>
?
我曾经使用List<? extends T>
,但它不允许我添加元素list.add(e)
,而List<? super T>
它.
我在阅读泛型时遇到了PECS(制片extends
人和消费者的super
简称).
能否给我一个人解释如何使用佩奇之间解决困惑extends
和super
?
List<? extends String> list = new Arraylist<String>();
list.add("foo");
Run Code Online (Sandbox Code Playgroud)
给定一段代码给我编译时错误.我不明白为什么我不能在列表中添加字符串.但代码意味着我们可以在列表中添加String类对象及其派生类对象,但我仍然得到错误原因