<? extends E> 和<? super E>的使用 <? extends E>的使用 Item 26 这是堆栈的公有API: public class Stack<E>{ public Stack(); public void push(E e); public E pop(); public boolean isEmpty(); public void pushAll(Iterable<E> s…
参数化类型是不可变的.对两个不同类型T1和T2而言,List<T1>与List<T2>没有父子类型关系. 考虑: public class Stack<E> { public Stack(); public void push(E e); public E pop(); public boolean isEmpty(); } 假设增加一个方法,按顺序将一系列的元素放到堆栈中: public void pushAll(Iterable<E> src) { fo…