文章詳情頁(yè)
java中<T> T和T的區(qū)別?
瀏覽:106日期:2023-11-30 13:49:48
問(wèn)題描述
為什么會(huì)報(bào)錯(cuò)?first不就是T類(lèi)型嗎?還有<T> T和T有什么區(qū)別?
問(wèn)題解答
回答1:如果你希望 getMax 方法的返回值類(lèi)型為 T,就要這樣去定義getMax方法:
public T getMax()
如果你希望 getMax 方法返回值的類(lèi)型由調(diào)用者決定,那么就這么去定義 getMax 方法:
public <A> A getMax() { //... return (A)result;}
這里的 A ,一定不能與類(lèi)名聲明的 T 是同個(gè)字母。
簡(jiǎn)而言之,你說(shuō)的 T 和 <T> T 根本是兩種不同的用途。
回答2:你應(yīng)該把第二個(gè)<T>去掉.<T> 是定義泛型 T是使用泛型你需要了解泛型類(lèi)和泛型方法
出現(xiàn)原因類(lèi)上的<T>和方法上的<T>不應(yīng)重復(fù)出現(xiàn),不然會(huì)認(rèn)為是在方法上重新定義了泛型.
標(biāo)簽:
java
相關(guān)文章:
1. docker images顯示的鏡像過(guò)多,狗眼被亮瞎了,怎么辦?2. 大家好,請(qǐng)問(wèn)在python腳本中怎么用virtualenv激活指定的環(huán)境?3. 網(wǎng)頁(yè)爬蟲(chóng) - 用Python3的requests庫(kù)模擬登陸B(tài)ilibili總是提示驗(yàn)證碼錯(cuò)誤怎么辦?4. javascript - 關(guān)于audio標(biāo)簽暫停的問(wèn)題5. android - QQ物聯(lián),視頻通話6. Matlab和Python編程相似嗎,有兩種都學(xué)過(guò)的人可以說(shuō)說(shuō)嗎7. javascript - 微信小程序封裝定位問(wèn)題(封裝異步并可能多次請(qǐng)求)8. javascript - Web微信聊天輸入框解決方案9. mysql - 怎么讓 SELECT 1+null 等于 110. 請(qǐng)教各位大佬,瀏覽器點(diǎn) 提交實(shí)例為什么沒(méi)有反應(yīng)
排行榜

熱門(mén)標(biāo)簽