1. 程式人生 > >關於泛型方法

關於泛型方法

> 首先需要注意的是,泛型方法所在的類可以是泛型類也可以不是。

## 基本原則

  1. 如果使用泛型方法可以取代將整個類泛型化,那麼就應該只使用泛型方法
  2. 對於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,""));
    }
}