[英]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.