Я читал о дженериках, и я не понимал необходимости для несвязанных подстановочных знаков и того, как он отличается от необработанного типа. Я прочитал этот вопрос, но все еще не понял его. На странице Java tutorial для несвязанного подстановочного знака я получил ниже двух пунктов, и я не понял первого пункта:
- Если вы пишете метод, который может быть реализован с использованием функциональных возможностей, предоставляемых в классе
Object
.- Когда код использует методы в общем классе, которые не зависят от параметра типа. Например,
List.size()
илиList.clear()
. На самом деле,Class<?>
так часто используется, потому что большинство методов изClass<T>
не зависят отT
.
Может кто-то объяснит разницу между несвязанным подстановочным знаком и необработанным типом на языке неспециалиста.
Как List<?>
отличается от List<Object>
?