關於泛型方法
阿新 • • 發佈:2018-11-26
> 首先需要注意的是,泛型方法所在的類可以是泛型類也可以不是。
## 基本原則
- 如果使用泛型方法可以取代將整個類泛型化,那麼就應該只使用泛型方法
- 對於static修飾的方法,無法訪問泛型類的型別引數。所以static方法需要使用泛型能力,就必須使其成為泛型方法
public class LinkedStack<T>{ /* ... */ public static void push(T item){//無法使用T型別引數 top = new Node<T>(item, top); } }
## 定義泛型方法
> 要定義一個泛型方法,只需要將泛型引數列表置於返回值之前
public class GenericMethod{ private <A, B> String getClassType(Integer x, A a, B b){ return x.getClass().getName()+" "+a.getClass().getName()+" "+b.getClass().getName(); } public static void main(String[] ss){ System.out.println(new GenericMethod().getClassType(2,1.0,"")); } }