作者热门文章
- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
我以前见过通配符表示任何对象 - 但最近看到了一个用法:
<? extends Object>
由于所有对象都扩展了 Object,这两种用法是同义词吗?
最佳答案
<?>
和 <? extends Object>
如您所料,是同义词。
在泛型的一些情况下,extends Object
实际上并不是多余的。例如,<T extends Object & Foo>
会导致T
成为Object
在删除下,而使用 <T extends Foo>
它将变为 Foo
在删除之下。 (如果您试图保持与使用 Object
的预泛型 API 的兼容性,这可能很重要。)
来源:http://download.oracle.com/javase/tutorial/extra/generics/convert.html ;它解释了为什么 JDK 的 java.util.Collections
类有一个带有这个签名的方法:
public static <T extends Object & Comparable<? super T>> T max(
Collection<? extends T> coll
)
关于java - <?> 和 < 有什么区别?在 Java 泛型中扩展 Object>?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8055389/
我是一名优秀的程序员,十分优秀!