java 泛型

有了泛型的好處就是在編繹期你的代碼就能被檢測(cè)出問(wèn)題來(lái)。

比如你有一個(gè)類是水果類class?Fruit{...}

然后你的代碼中把T全換成Fruit,那么以后你往ArrayList里面就只能加入Fruit及子類(如蘋果,梨等),不然會(huì)直接報(bào)錯(cuò)。也就是你告訴編繹器說(shuō):在我的這個(gè)容器里面我只要加水果類,如果我誤加了別的類(如鐵類,人類,球類)請(qǐng)馬上告訴我。

如下面源代碼,為什么前面要加上<T>呢?

privateListcashFutures(List> futures) {? ? ? ? Listvalues = new ArrayList();? ? ? ? for (Futurefuture : futures) {

try {

values.add(future.get());

} catch (Exception e) {

throw new IllegalStateException(e);

}

}

return values;

}


這個(gè)方法返回值前也加個(gè)<T>的話,這個(gè)T就代表該方法自己獨(dú)有的某個(gè)類,而不去和類中限定的T產(chǎn)生沖突,直接換成<E>會(huì)更容易理解的。

示例:http://bbs.csdn.net/topics/390171178

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 引言 泛型是Java中一個(gè)非常重要的知識(shí)點(diǎn),在Java集合類框架中泛型被廣泛應(yīng)用。本文我們將從零開始來(lái)看一下Jav...
    橫沖直撞666閱讀 463評(píng)論 0 0
  • 一、引入泛型機(jī)制的原因 假如我們想要實(shí)現(xiàn)一個(gè)String數(shù)組,并且要求它可以動(dòng)態(tài)改變大小,這時(shí)我們都會(huì)想到用Arr...
    Q南南南Q閱讀 600評(píng)論 0 1
  • 泛型 泛型由來(lái) 泛型字面意思不知道是什么類型,但又好像什么類型都是??辞懊嬗玫降募隙加蟹盒偷挠白?。 以Array...
    向日花開閱讀 2,241評(píng)論 2 6
  • 現(xiàn)在開始寫《神尺》小說(shuō),才真正體會(huì)到何為“述而不作”。 孔子,為圣人。在述而篇,首闡述“述而不作”,是只闡述而不創(chuàng)...
    小溪終入海閱讀 1,215評(píng)論 5 12
  • 直接返回到第一個(gè)視圖 [self.navigationController popToRootViewContro...
    旅途開發(fā)者閱讀 1,989評(píng)論 0 2

友情鏈接更多精彩內(nèi)容