java 泛型方法 泛型類
阿新 • • 發佈:2019-02-16
泛型方法
/**
* 泛型方法的基本介紹
* @param tClass 傳入的泛型實參
* @return T 返回值為T型別
* 說明:
* 1)public 與 返回值中間<T>非常重要,可以理解為宣告此方法為泛型方法。
* 2)只有聲明瞭<T>的方法才是泛型方法,泛型類中的使用了泛型的成員方法並不是泛型方法。
* 3)<T>表明該方法將使用泛型型別T,此時才可以在方法中使用泛型型別T。
* 4)與泛型類的定義一樣,此處T可以隨便寫為任意標識,常見的如T、E、K、V等形式的引數常用於表示泛型。
*/
public <T> T genericMethod(Class<T> tClass)throws InstantiationException ,
IllegalAccessException{
T instance = tClass.newInstance();
return instance;
}
泛型類
//此處T可以隨便寫為任意標識,常見的如T、E、K、V等形式的引數常用於表示泛型
//在例項化泛型類時,必須指定T的具體型別
public class Generic<T>{
//key這個成員變數的型別為T,T的型別由外部指定
private T key;
public Generic(T key) { //泛型構造方法形參key的型別也為T,T的型別由外部指定
this.key = key;
}
public T getKey(){ //泛型方法getKey的返回值型別為T,T的型別由外部指定
return key;
}
}
泛型介面
//定義一個泛型介面
public interface Generator<T> {
public T next();
}