二.5 java高階-反射,註解,泛型
阿新 • • 發佈:2021-08-13
一.泛型
1.定義:泛型的本質是引數化型別,就是將型別引數化。限制資料元素的資料型別,提供了編譯時的安全檢查
2.泛型標記:E-Element,T-Type, K-Key, V-Vlaue, N-Number, ?
3.泛型限定:
(1)對泛型上限的限定:<? extends T> 表示該萬用字元所代表的型別是T型別的子類或者介面T的子介面
(2)對泛型下限的限定:<? super T> 表示該萬用字元所代表的型別是T型別的父類或者父介面
4.泛型方法:將方法的引數型別定義為泛型,以便在呼叫時接收不同型別的引數
public static <T> void generalMethod(T... inputArray) inputArray為泛型引數列表
5.泛型類:在類上定義了泛型,以便在使用時可以根據傳入的不同引數型別例項化不同的物件
public class GeneralClass<T> { private T t; public void add(T t){ this.t=t; } public T get(){ return t; } }
6.泛型介面:與泛型類的宣告類似。泛型介面的具體型別一般在實現類中宣告,不同型別的實現類處理不同的業務邏輯
7.型別擦除:在編碼階段採用泛型加上的型別引數,會被編譯器編譯時去掉。因此,泛型主要用於編譯階段