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