泛型(持續(xù)更新中......)

一簇搅、泛型類(lèi)和泛型接口

1.如果定義了泛型類(lèi),實(shí)例化沒(méi)有指明類(lèi)的泛型贾节,則認(rèn)為此泛型類(lèi)型為Object類(lèi)型火欧。
2.要求:如果大家定義了類(lèi)帶了泛型的,建議在實(shí)例化時(shí)要指明類(lèi)的泛型振劳。
3.由于子類(lèi)在繼承帶泛型的父類(lèi)時(shí)椎组,如果父類(lèi)指明了泛型類(lèi)型。則實(shí)例化子類(lèi)對(duì)象時(shí)历恐,不再需要指明泛型寸癌。子類(lèi)不是泛型類(lèi)。

public class SubOrder extends Order<Integer> {
}

4.由于子類(lèi)在繼承帶泛型的父類(lèi)時(shí)弱贼,如果父類(lèi)不指明泛型類(lèi)型蒸苇。是泛型類(lèi)(例:ArrayList)

public class SubOrder1<T> extends Order<T> {
}

1.泛型類(lèi)可以有多個(gè)參數(shù),此時(shí)應(yīng)將多個(gè)參數(shù)一起放在尖括號(hào)內(nèi)吮旅。比如:<E1,E2,E3>
2.泛型類(lèi)的構(gòu)造器如下:public GenericClass() {},錯(cuò)誤的是public GenericClass<E>() {}
3.實(shí)例化后溪烤,操作原來(lái)泛型位置的結(jié)構(gòu)必須與指定的泛型類(lèi)型一致。
4.泛型不同的引用不能相互復(fù)制庇勃。
5.泛型如果不指定檬嘀,將被擦除,泛型對(duì)應(yīng)類(lèi)型均按照Object處理责嚷,但不等價(jià)與Object鸳兽。經(jīng)驗(yàn):泛型要使用一路都用。要不用罕拂,一路都不要用揍异。
6.如果泛型結(jié)構(gòu)是一個(gè)接口或抽象類(lèi),則不可以創(chuàng)建泛型類(lèi)的對(duì)象爆班。
7.jdk1.7衷掷,泛型的簡(jiǎn)化操作:ArrayList<Fruit> flist = new ArrayList<>();
8.泛型的指定中不能使用基本數(shù)據(jù)類(lèi)型,可以使用包裝類(lèi)替換柿菩。
9.在類(lèi)/接口上聲明的泛型棍鳖,在本類(lèi)或本接口中即代表某種類(lèi)型,可以作為非靜態(tài)屬性的類(lèi)型碗旅,非靜態(tài)方法的參數(shù)類(lèi)型渡处,非靜態(tài)防范的返回值類(lèi)型,但在靜態(tài)方法中不能使用類(lèi)得泛型祟辟。
10.異常類(lèi)不能是類(lèi)的泛型
11.不能使用new E[]医瘫。但是可以: E[] elements = (E[])new Object[capacity]; 參考:ArrayList源碼中聲明:Object[] elementData,而非泛型參數(shù)類(lèi)型數(shù)組旧困。
12.父類(lèi)有泛型醇份,子類(lèi)可以選擇保留泛型也可以選擇指定泛型類(lèi)型:

子類(lèi)不能保留父類(lèi)的泛型:按需實(shí)現(xiàn)
   沒(méi)有類(lèi)型  擦除
子類(lèi)保留父類(lèi)的泛型:泛型子類(lèi)
  全部保留
  部分保留
1.png

結(jié)論:子類(lèi)必須是“富二代”稼锅,子類(lèi)除了指定或保留父類(lèi)的泛型,還可以增加自己的泛型僚纷。

二矩距、泛型方法

泛型方法:在方法中出現(xiàn)了泛型的結(jié)構(gòu),泛型參數(shù)與類(lèi)得泛型參數(shù)沒(méi)有任何關(guān)系怖竭。
泛型方法可以聲明為靜態(tài)的锥债,原因:泛型參數(shù)是在調(diào)用方法的時(shí)候確定的,并不是實(shí)例化類(lèi)時(shí)確定的痊臭。

//泛型參數(shù)
public <E> List<E> copyFromArrayToList(E[] arr) {
}
三哮肚、泛型在繼承方面的體現(xiàn)

泛型在繼承方面的體現(xiàn)
雖然類(lèi)A是類(lèi)B的父類(lèi),但是G<A>和 G<B>二者不具備子父類(lèi)關(guān)系广匙,二者是并列關(guān)系允趟。
補(bǔ)充:類(lèi)A是類(lèi)B的父類(lèi),A<G>是B<G>的父類(lèi)

//如下代碼:這種寫(xiě)法時(shí)錯(cuò)誤的鸦致,此時(shí)list1(List<Object> )和list2(List<String> )的類(lèi)型不具又子父類(lèi)關(guān)系潮剪。雖然Object是String的父類(lèi)。
List<Object> list1 = null;
List<String> list2 = null;
list1 = list2

證明反證法: list1=list2分唾;假設(shè)list1=list2鲁纠,list1.add(123);導(dǎo)致非String的數(shù)據(jù)混入。出錯(cuò)

四鳍寂、通配符的使用

類(lèi)A是類(lèi)B的父類(lèi),但是G<A>和 G<B>二者沒(méi)有關(guān)系情龄,G<?>是G<A>和 G<B>的父類(lèi)
對(duì)于List<?>就不能向其內(nèi)部添加數(shù)據(jù)了,除了添加null之外迄汛。

List<Object> list1 = null;
List<String> list2 = null;
List<?>
list1 = list2
1609216469(1).png

1609216767(1).png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市骤视,隨后出現(xiàn)的幾起案子鞍爱,更是在濱河造成了極大的恐慌,老刑警劉巖专酗,帶你破解...
    沈念sama閱讀 207,248評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件睹逃,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡祷肯,警方通過(guò)查閱死者的電腦和手機(jī)沉填,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評(píng)論 2 381
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)佑笋,“玉大人翼闹,你說(shuō)我怎么就攤上這事〗常” “怎么了猎荠?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,443評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵坚弱,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我关摇,道長(zhǎng)荒叶,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,475評(píng)論 1 279
  • 正文 為了忘掉前任输虱,我火速辦了婚禮些楣,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘悼瓮。我一直安慰自己戈毒,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,458評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布横堡。 她就那樣靜靜地躺著埋市,像睡著了一般。 火紅的嫁衣襯著肌膚如雪命贴。 梳的紋絲不亂的頭發(fā)上道宅,一...
    開(kāi)封第一講書(shū)人閱讀 49,185評(píng)論 1 284
  • 那天,我揣著相機(jī)與錄音胸蛛,去河邊找鬼污茵。 笑死,一個(gè)胖子當(dāng)著我的面吹牛葬项,可吹牛的內(nèi)容都是我干的泞当。 我是一名探鬼主播,決...
    沈念sama閱讀 38,451評(píng)論 3 401
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼民珍,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼襟士!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起嚷量,我...
    開(kāi)封第一講書(shū)人閱讀 37,112評(píng)論 0 261
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤陋桂,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后蝶溶,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體嗜历,經(jīng)...
    沈念sama閱讀 43,609評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,083評(píng)論 2 325
  • 正文 我和宋清朗相戀三年抖所,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了梨州。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 38,163評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡田轧,死狀恐怖摊唇,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情涯鲁,我是刑警寧澤巷查,帶...
    沈念sama閱讀 33,803評(píng)論 4 323
  • 正文 年R本政府宣布有序,位于F島的核電站,受9級(jí)特大地震影響岛请,放射性物質(zhì)發(fā)生泄漏旭寿。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,357評(píng)論 3 307
  • 文/蒙蒙 一崇败、第九天 我趴在偏房一處隱蔽的房頂上張望盅称。 院中可真熱鬧,春花似錦后室、人聲如沸缩膝。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,357評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)疾层。三九已至,卻和暖如春贡避,著一層夾襖步出監(jiān)牢的瞬間痛黎,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,590評(píng)論 1 261
  • 我被黑心中介騙來(lái)泰國(guó)打工刮吧, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留湖饱,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,636評(píng)論 2 355
  • 正文 我出身青樓杀捻,卻偏偏與公主長(zhǎng)得像井厌,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子致讥,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,925評(píng)論 2 344

推薦閱讀更多精彩內(nèi)容