1. 程式人生 > >關於public T method(T t)函式的說明

關於public T method(T t)函式的說明

現有這麼一個函式:

[正確示例]

public <T> T method(T t){
        // CODE
        return t;
}

上面的程式碼,在public和method之間有兩個部分<T>和T。

其中<T>是為了定義當前我有一個 範型變數型別,型別名使用T來表示,而第二部分T,表示method這個函式的返回值型別為T,其中的<T>只是為了在函式宣告前,定義一種範型;因此下面的函式也是合法的:

[正確示例]

public <T> int method1(T t){
        // CODE
        return 1;
}


上面的函式,<T>也是為了定義一種範型,用來提前宣告形參的型別是一個範型變數。

相反的,在使用自定義的範型T之前,如果不首先使用<T>來聲明範型變數的存在的話,編譯器會有錯誤提示:

[錯誤示例]-(沒有聲明範型變數型別T)

public T method(T t){
        // CODE
        return t;
}

[錯誤示例]-(沒有聲明範型變數型別T)
public int method(T t){
        // CODE
        return 1;
}