我的問題不在於使用情況,而在於術語。簡而言之,誰是通用的,類型,通配符在其中 -Java中泛型,類型,通配符的區別
List<T>
List<Integer>
List<? extends Number>
你也可以添加你自己的例子。我明白T
將是類型,?
通配符但什麼是通用的,我們在這裏使用什麼Integer
?
我的問題不在於使用情況,而在於術語。簡而言之,誰是通用的,類型,通配符在其中 -Java中泛型,類型,通配符的區別
List<T>
List<Integer>
List<? extends Number>
你也可以添加你自己的例子。我明白T
將是類型,?
通配符但什麼是通用的,我們在這裏使用什麼Integer
?
一個很好的信息來源將是甲骨文的教程,像here:
public interface List <E> {
void add(E x);
Iterator<E> iterator();
}
這些都是接口列表和Iterator的形式類型參數的聲明。
當然不過,最終的答案都可以在JLS中找到,如:
類是通用的,如果它聲明一個或多個類型變量
或進一步下跌:
如果方法聲明一個或多個類型變量,則該方法是通用的
在o其他詞語:要真正理解術語,開始閱讀JLS,第8.1.2和8.4.4節。
除此之外:更易於閱讀但深入介紹的常見問題解答是Angelika Langer。
泛型是一種創建約束的方式。 列表簡單表示整數列表。
要聲明一個上界通配符,請使用通配符('?'),後跟extends關鍵字,後跟上邊界。
所有這三個表示泛型,T表示它可以是任何類型,並且?在這裏表示該列表應該是某種類型的數字 – jos
感謝您的超級快速接受! – GhostCat