Java中的泛型提供了編譯時類型檢查,可以在編譯時檢查類型的安全性,避免了程序在運行時出現類型轉換異常的情況。Java中的泛型分為泛型類和泛型方法。
泛型類是具有類型參數的類,可以將類型參數用于類的屬性、方法或構造函數中,實現通用性的代碼復用。例如:
public class MyClass{
private T t;
public MyClass(T t) {
this.t = t;
}
public T getValue() {
return t;
}
}
上面的代碼定義了一個泛型類MyClass,其中T是一個類型參數。MyClass類具有一個構造函數和一個方法,它們都使用了類型參數T。使用MyClass類時,可以傳遞不同的類型參數,實現通用性的代碼復用。
泛型方法是具有類型參數的方法,可以在方法內部使用類型參數,實現通用性的代碼復用。例如:
public class MyUtils {
public staticvoid printArray(T[] array) {
for (T element : array) {
System.out.println(element);
}
}
}
上面的代碼定義了一個泛型方法printArray,其中T是一個類型參數。該方法接受一個類型為T的數組作為參數,遍歷數組并打印數組中的元素。使用泛型方法時,可以傳遞不同類型的數組,實現通用性的代碼復用。
Java中的泛型可以應用于類、接口、方法等,可以大大提高代碼的復用性和可讀性,降低了程序的錯誤率。泛型類和泛型方法是Java中常用的泛型應用方式,開發者可以根據具體需求進行選擇。