#為什麼會報錯? first不就是T型嗎?還有<T> T和T有什麼差別?
小伙看你根骨奇佳,潜力无限,来学PHP伐。
如果你希望 getMax 方法的返回值类型为 T,就要这样去定义getMax方法:
getMax
public T getMax()
如果你希望 getMax 方法傳回值的型別由呼叫者決定,那就這樣去定義 getMax 方法:
public <A> A getMax() { //... return (A)result; }
這裡的 A ,一定不能與類別名稱宣告的 T 是同個字母。
簡而言之,你說的 T 和 T 根本是兩種不同的用途。
你應該把第二個去掉. 是定義泛型 T是使用泛型你需要了解泛型類別和泛型方法
出現原因類別上的和方法上的不應重複出現,不然會認為是在方法上重新定義了泛型.
如果你希望
getMax
方法的返回值类型为 T,就要这样去定义getMax
方法:如果你希望 getMax 方法傳回值的型別由呼叫者決定,那就這樣去定義
getMax
方法:這裡的 A ,一定不能與類別名稱宣告的 T 是同個字母。
簡而言之,你說的 T 和 T 根本是兩種不同的用途。
你應該把第二個去掉.
是定義泛型 T是使用泛型
你需要了解泛型類別和泛型方法
出現原因類別上的和方法上的不應重複出現,不然會認為是在方法上重新定義了泛型.