在Java中使用泛型時(shí),可以通過以下步驟進(jìn)行:
聲明泛型類:使用尖括號(hào)<>在類名后面添加泛型參數(shù)。例如,class MyClass<T> { }
表示一個(gè)擁有泛型參數(shù)T的類。
使用泛型類:在創(chuàng)建類的實(shí)例時(shí),指定具體的類型參數(shù)。例如,MyClass<String> myObj = new MyClass<String>();
表示創(chuàng)建一個(gè)泛型類實(shí)例,其中類型參數(shù)T被指定為String。
聲明泛型方法:與聲明泛型類類似,使用尖括號(hào)<>在方法名后面添加泛型參數(shù)。例如,public <T> void myMethod(T obj) { }
表示一個(gè)擁有泛型參數(shù)T的方法。
使用泛型方法:在調(diào)用方法時(shí),可以根據(jù)需要指定具體的類型參數(shù),也可以讓編譯器自動(dòng)推斷類型參數(shù)。例如,myMethod("Hello");
表示調(diào)用myMethod方法并傳遞一個(gè)String類型的參數(shù)。
泛型通配符:有時(shí)候,不確定泛型參數(shù)的具體類型,可以使用通配符?
來表示。例如,List<?> myList = new ArrayList<String>();
表示創(chuàng)建一個(gè)泛型列表,但不確定列表中元素的具體類型。
泛型限定:可以使用 extends 關(guān)鍵字限定泛型參數(shù)的類型范圍。例如,public <T extends Number> void myMethod(T obj) { }
表示限定泛型參數(shù)T必須是Number類或其子類。
以上是Java中使用泛型的基本用法,通過泛型可以增加代碼的靈活性和安全性,可以在編譯時(shí)進(jìn)行類型檢查,減少運(yùn)行時(shí)錯(cuò)誤。