您的位置:首頁技術文章
文章詳情頁

java中<T> T和T的區別?

瀏覽:93日期:2023-11-30 13:49:48

問題描述

java中<T> T和T的區別?

為什么會報錯?first不就是T類型嗎?還有<T> T和T有什么區別?

問題解答

回答1:

如果你希望 getMax 方法的返回值類型為 T,就要這樣去定義getMax方法:

public T getMax()

如果你希望 getMax 方法返回值的類型由調用者決定,那么就這么去定義 getMax 方法:

public <A> A getMax() { //... return (A)result;}

這里的 A ,一定不能與類名聲明的 T 是同個字母。

簡而言之,你說的 T 和 <T> T 根本是兩種不同的用途。

回答2:

你應該把第二個<T>去掉.<T> 是定義泛型 T是使用泛型你需要了解泛型類和泛型方法

出現原因類上的<T>和方法上的<T>不應重復出現,不然會認為是在方法上重新定義了泛型.

標簽: java
相關文章:
国产综合久久一区二区三区