有什么区别<t>和<! - ? - >

时间:2015-10-17 15:31:33

标签: java generics wildcard

之间有什么区别
<T> void foo(List<T> i) {
.........
}

void foo(List<?> i) {
........
}

两者都只允许i上的对象调用方法(编译器限制)。 使用通配符的第二种方法不允许您将任何对象添加到列表中(我们可以使用辅助方法,这很麻烦)。为什么我们需要无限外卡?它不限制或放宽任何要调用的类型。我们什么时候使用第二种方法?

0 个答案:

没有答案