文章詳情頁
java中<T> T和T的區別?
瀏覽:103日期:2023-11-30 13:49:48
問題描述
為什么會報錯?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
相關文章:
1. SQLAlchemy 訪問Mysql數據庫彈出Warning,VARIABLE_VALUE,如何解決?2. mysql - 數據庫建字段,默認值空和empty string有什么區別 1103. shell - Update query wrong in MySQL4. 事務 - mysql共享鎖lock in share mode的實際使用場景5. sql語句 - 如何在mysql中批量添加用戶?6. 怎么php怎么通過數組顯示sql查詢結果呢,查詢結果有多條,如圖。7. mysql建表報錯,查手冊看不懂,求解?8. mysql - JAVA怎么實現一個DAO同時實現查詢兩個實體類的結果集9. mysql - PHP定時通知、按時發布怎么做?10. php - 數據庫表如果是null怎么替換為其他字段的值
排行榜
