中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java泛型中T和?的區別是什么

發布時間:2021-10-15 10:28:50 來源:億速云 閱讀:228 作者:柒染 欄目:編程語言

今天就跟大家聊聊有關java泛型中T和?的區別是什么,可能很多人都不太了解,為了讓大家更加了解,小編給大家總結了以下內容,希望大家根據這篇文章可以有所收獲。

T 代表一種類型。

加在類上:

class SuperClass<A>{}

加在方法上:

public <T>void fromArrayToCollection(T[] a, Collection<T> c){}

(免費學習視頻教程分享:java視頻教程)

方法上的<T>代表括號里面要用到泛型參數,若類中傳了泛型,此處可以不傳,調用類型上面的泛型參數,前提是方法中使用的泛型與類中傳來的泛型一致。

class People<T>{
public void show(T a) {
   }
}

T extends T2 指傳的參數為T2或者T2的子類型。

?是通配符,泛指所有類型。

一般用于定義一個引用變量,這么做的好處是,如下所示,定義一個sup的引用變量,就可以指向多個對象。

SuperClass<?> sup = new SuperClass<String>("lisi");
sup = new SuperClass<People>(new People());
sup = new SuperClass<Animal>(new Animal());

若不用?,用固定的類型的話,則:

SuperClass<String> sup1 = new SuperClass<String>("lisi");
SuperClass<People> sup2 = new SuperClass<People>("lisi");
SuperClass<Animal> sup3 = new SuperClass<Animal>("lisi");

這就是?通配符的好處。

看完上述內容,你們對java泛型中T和?的區別是什么有進一步的了解嗎?如果還想了解更多知識或者相關內容,請關注億速云行業資訊頻道,感謝大家的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

临洮县| 漳平市| 翼城县| 河池市| 福泉市| 武穴市| 香河县| 沁源县| 黔南| 齐齐哈尔市| 道真| 尤溪县| 民县| 广州市| 卓尼县| 文成县| 香格里拉县| 鄢陵县| 阳山县| 江安县| 桑植县| 东源县| 姚安县| 昭平县| 扶沟县| 海阳市| 赣榆县| 秀山| 昔阳县| 金塔县| 曲周县| 双鸭山市| 北海市| 新宁县| 长沙县| 文成县| 博乐市| 武胜县| 博兴县| 武乡县| 龙游县|