1
我有一個關於在Java集合框架中使用泛型類型的問題。Java集合框架中的泛型類型和方法聲明
下面是從Oracle的Java集合線程所採取的Set
接口的片段(發現here):
public interface Set<E> extends Collection<E> {
// Basic operations
int size();
boolean isEmpty();
boolean contains(Object element);
// optional
boolean add(E element);
// optional
boolean remove(Object element);
...
我的問題是:鑑於Set<E>
是通用與泛型類型參數E
,爲什麼是contains
和remove
方法聲明爲Object
類型的參數? add
方法需要E
類型的參數,爲什麼不要contains
和remove
也這樣做?
謝謝史密斯先生42。你有沒有一個向後兼容的例子?很高興看到它在行動中。 – 2013-03-01 19:53:05