泛型概念與用例

2021-09-30 01:56:40 字數 1617 閱讀 2175

泛型的本質是引數化型別,也就是說所操作的 資料型別 被指定為乙個引數

泛型完成的功能,object型別也能完成,但是使用泛型可以更加方便,如汎型不需要型別轉換、泛型在編譯期間就能發現型別異常等

使用?代替具體的型別引數

通過super或extends來限定萬用字元範圍

考察的是 限定萬用字元 與 非限定萬用字元 的問題;

其兩者都是限定萬用字元,list<? extends t> 可以接受任何繼承自t型別的元素,而 list<? super t> 可以接受任何t的父類元素。例如list<? extends number>可以接受list或list;

非限定萬用字元用 < ? > 表示,可以用任意型別來替代。

/**

* @author snail

* @describe 泛型的測試用例

* @createtime 2019/11/28

*/public

class

generictest

public

void

showtype()

public

static

void

main

(string[

] args)

}

在上面的例子中,沒有限制 t 的範圍,t 可以是任意的型別。

如果需要限制 t 型別,其 t 符合單繼承多實現(繼承的類在前,實現的介面在後)的規則,寫法如下:

public

class

generictest

number

& serializable >

/**

* @author snail

* @describe 泛型介面測試

* @createtime 2019/11/29

*/public

class

genericinte***cetest

implements

genericinte***ce

public

static

void

main

(string[

] args)

}inte***ce

genericinte***ce

泛型方法在呼叫時可以接收不同型別的引數,在方法內部可以根據不同的型別做出不同的處理。

/**

* @author snail

* @describe 泛型方法測試用例

* @createtime 2019/11/29

*/public

class

genericmethodtest

system.out.

println()

;}public

static

void

main

(string[

] args));

print

(new

string

);}}

c 泛型與單例

你好!這是泛型與單例所展示的歡迎頁。普通單例類 單例模式的實現 public class singleton 定義公有方法提供乙個全域性訪問點,同時你也可以定義公有屬性來提供全域性訪問點 public static singleton getinstance return uniqueinstanc...

泛型的概念

泛型 定義 泛型是 通過引數化型別來實現在同乙份 上操作多種資料型別 的 技術。利用 引數化型別 將型別抽象化,從而實現靈活的復用。優點1 提高了 的復用性 2 提高了效能,指定型別,解決了型別的轉換,避免了拆箱與裝箱 3 比較安全 泛型的格式 宣告乙個泛型的方法,方法名後面需要乙個 其中字母t不是...

集合和泛型11 泛型委託與泛型事件

委託也可以泛型化,也就是委託也定義自己的型別引數,這樣的委託稱為泛型委託。在使用委託的 中可以給委託指定型別引數的具體型別,而讓泛型委託例項化為具體的委託例項。就像例項化泛型類或呼叫泛型方法一樣。定義乙個泛型委託的語法格式 public private protected delegate 返回型別...