Почему HashSet <E> не ограничивает тип аргумента E в contains () и remove () [duplicate]
Possible Duplicate:
What are the reasons why Map.get(Object key) is not (fully) generic
Why does Java's TreeSet<E> remove(Object) not take an E
Почему HashSet не ограничивает тип аргумента E здесь:
public boolean contains(Object o)
public boolean remove(Object o)
как это делает для add ()
public boolean add(E e)
Я имею в виду, что если компилятор обеспечивает добавление только объектов типа E, то набор не может содержать / удалять любые другие типы.