日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

java泛化_JAVA泛化及为什么需要泛化

發(fā)布時(shí)間:2025/4/5 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 java泛化_JAVA泛化及为什么需要泛化 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

展開全部

泛型的本質(zhì)是參數(shù)化類型,也就是說(shuō)所操作的數(shù)據(jù)類型被指定為一32313133353236313431303231363533e58685e5aeb931333361326262個(gè)參數(shù)。

比如,有一種類型為L(zhǎng)ist,此時(shí)該List可以是任意類型的列表,如Integer,String等等。

如果把List類型改為L(zhǎng)ist,則此時(shí)只表示整型的列表。

這就是所謂的將操作的數(shù)據(jù)類型指定為一個(gè)參數(shù)

那么這么做有什么好處呢?

比如原來(lái)我們有如下的程序:List?myIntList?=?new?LinkedList();//?1

myIntList.add(new?Integer(0));//?2

Integer?x?=?(Integer)?myIntList.iterator().next();//?3

在第三行中進(jìn)行了強(qiáng)制類型轉(zhuǎn)換。這個(gè)類型轉(zhuǎn)換不僅僅帶來(lái)了混亂,它還可能產(chǎn)生一個(gè)運(yùn)行時(shí)錯(cuò)誤(run time error),因?yàn)槌绦騿T可能會(huì)犯錯(cuò)。

程序員如何才能明確表示他們的意圖,把一個(gè)list中的內(nèi)容限制為一個(gè)特定的數(shù)據(jù)類型呢?這是generics背后的核心思想。這是上面程序片斷的一個(gè)泛型版本:List?myIntList?=?new?LinkedList();?//?1

myIntList.add(new?Integer(0));?//?2

Integer?x?=?myIntList.iterator().next();?//?3

注意變量myIntList的類型聲明。它指定這不是一個(gè)任意的List,而是一個(gè)Integer的List,寫作:List。我們說(shuō)List是一個(gè)帶一個(gè)類型參數(shù)的泛型接口(a generic interface that takes a type parameter),本例中,類型參數(shù)是Integer。我們?cè)趧?chuàng)建這個(gè)List對(duì)象的時(shí)候也指定了一個(gè)類型參數(shù)。

另一個(gè)需要注意的是第3行沒了類型轉(zhuǎn)換。

總結(jié)

以上是生活随笔為你收集整理的java泛化_JAVA泛化及为什么需要泛化的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。