Я читаю главу о Generics in Effective Java.
Помогите мне понять разницу между Set
, Set<?>
и Set<Object>
?
Следующий абзац взят из книги.
В качестве быстрого обзора
Set<Object>
представляет собой параметризованный тип, представляющий набор, который может содержать объекты любого типа,Set<?>
является подстановочным типом представляющий множество, которое может содержать только объекты неизвестного тип иSet
- это необработанный тип, который выбирает из общего типа система.
Что подразумевается под "неизвестным типом"? Все неизвестные типы типа Object
? В этом случае какова конкретная разница между Set<?>
и Set<Object>
?