java筆記(四) 泛型

2021-08-02 18:14:49 字數 1105 閱讀 9529

一句話,泛型的本質是引數化型別

乙個簡單的例子如下:

public

class

test

}class type

public t print()

}

在類type中,屬性data不事先指定型別,而是使用泛型代替,這樣就可以為同乙個類宣告多種型別的屬性。

integer.getclass() == str.getclass()的結果為true,可知編譯後,並不會因為多種型別就分別生成多個type類。

除了用於類,還可以用於方法。泛型方法的型別引數放在返回型別前面。

public

static

void

main(string args);

string str = ;

print(in);

print(str);

}public

static

void

print(t data)

<?>代替具體的型別引數

public

class

test

public

static

void

print(type<?> type)

}class type

}

實際上,上述**中的type<?>可以簡化為type

萬用字元的主要意義在於設定其上限和下限。

public

class

test

public

static

void

print(type<? extends number> type)

}class type

}

type<? super number>type<? extends number>相反,表示只能是number的父類.

java泛型筆記

泛型好處 提高安全性 將執行期的錯誤轉換到編譯期 省去強轉的麻煩 泛型基本使用 中放的必須是引用資料型別 泛型使用注意事項 前後的泛型必須一致,或者後面的泛型可以省略不寫 1.7的新特性菱形泛型 類內的方法最好與類的泛型一致,否則需要在方法上宣告該泛型 靜態方法必須宣告自己的泛型,它不能跟類的泛型是...

Java學習筆記 泛型

注 這裡只簡單介紹了一下泛型最基礎的使用,泛型功能很強大,為了趕課程,關於通用型別部分過後補上。別被我的筆記所誤導 課程中的泛型首先是由泛型集合開始入手的。由前邊的兩個集合arraylist和hashmap可以看出,在使用方便的同時也帶來了很多問題。1,效率低下,集合都是object的型別,使用是需...

java 泛型學習筆記

首先我對泛型的理解就是可以把任何object的子類當做類中的型別,下面是對於泛型的基本定義 public class generict public object getfoo 然後對於泛型 可以有兩個型別或者更多 public class generictt public void setfoo1...