[英]Generic Methods Java
这两种通用方法有什么区别吗?
public static <E> void fill(ArrayList<? extends Comparable<? super E>> a)
public static <E extends Comparable<? super E>> void fill2(ArrayList<E> a)
是的, E
的绑定是不同的。 鉴于一些
class Foo implements Comparable<Foo>
还有一些
class Bar implements Comparable<Foo> // Not Bar!
Foo
将是fill
和fill2
的合法参数,因为第二种方法需要E = Foo
来扩展Comparable
并使这个Comparable
实现为E = Foo
。 Bar
无法满足这一要求。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.