ThinkChat🤖让你学习和工作更高效,注册即送10W Token,即刻开启你的AI之旅 广告
### super通配符 ``` void someMethod(List<? super Integer> list) { list.add(123); Integer n = list.get(0); // ERROR } ``` 允许传入`List<Integer>`,`List<Number>`,`List<Object>` 允许调用方法传入Integer类型 不允许调用方法获取Integer类型(Object除外) ### &lt;T super Integer&gt; 定义泛型时可以通过extends限定T必须是Integer或Integer的超类 ### extends和super通配符的区别 &lt;? extends T&gt;允许调用方法获取T的引用 &lt;? super T&gt;允许调用方法传入T的引用 ### 无限定通配符&lt;?&gt; 只能获取Object引用 只能传入null 可以用&lt;T&gt;消除&lt;?&gt;