日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

最佳新秀Java(22)——再次了解泛型

發(fā)布時間:2023/12/9 java 34 豆豆
生活随笔 收集整理的這篇文章主要介紹了 最佳新秀Java(22)——再次了解泛型 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

仿制藥Java SE 1.5新功能。通用自然是參數(shù)化類型。即操作數(shù)據(jù)類型被指定為一個參數(shù)。這樣的參數(shù)類型可以在課堂上使用、創(chuàng)建的接口和方法,他們被稱為通用類、、泛型方法。

Java語言引入泛型的優(yōu)點是安全簡單。


規(guī)則和限制

1、泛型的類型參數(shù)僅僅能是類類型(包含自己定義類),不能是簡單類型。
2、同一種泛型能夠相應多個版本號(由于參數(shù)類型是不確定的),不同版本號的泛型類實例是不兼容的。
3、泛型的類型參數(shù)能夠有多個。
4、泛型的參數(shù)類型能夠使用extends語句。比如<T extends superclass>。習慣上稱為“有界類型”。
5、泛型的參數(shù)類型還能夠是通配符類型。

比如Class<?> classType = Class.forName("java.lang.String")。


限制泛型
我們通常是這樣定義泛型的:class Generics<T>。實際上這里的限定類型相當于Object,這和“Object泛型”實質(zhì)是一樣的。什么是限制比方我們要限制T為集合接口類型。

僅僅須要這么做:class Generics<T extends Collection>。這樣類中的泛型T僅僅能是Collection接口的實現(xiàn)類,傳入非Collection接口編譯會出錯。

注意:<T extends Collection>這里的限定使用keywordextends。后面能夠是類也能夠是接口。但這里的extends已經(jīng)不是繼承的含義了。應該理解為T類型是實現(xiàn)Collection接口的類型。或者T是繼承了XX類的類型。


public class CollectionGen<T extends Collection> {private T t;public CollectionGen(T t) {this.t = t;}public T getT() {return t;}public void setT(T t) {this.t = t;}public static void main(String args[]) {CollectionGen<ArrayList> genList = null;genList = new CollectionGen<ArrayList>(new ArrayList());//下面代碼不能通過編譯 // CollectionGen<Collection> genCollention = null; // genCollention=new CollectionGen<ArrayList>(new ArrayList());System.out.println("能夠編譯通過并執(zhí)行!");} }

上面的代碼是能夠編譯通過并成功執(zhí)行的。可是打開凝視掉的兩行就出錯了。由于<T extends Collection>這么定義類型的時候。就限定了構(gòu)造此類實例的時候T是確定的一個類型。這個類型實現(xiàn)了Collection接口。簡單一句話就是:上面這樣的方式。定義跟實例化的類型必須全然一致。


通配符泛型
為了解決類型被限制死了不能動態(tài)依據(jù)實例來確定的缺點,引入了“通配符泛型”。針對上面的樣例,使用通配泛型格式為<? extends Collection>,“?”代表未知類型,這個類型是實現(xiàn)Collection接口。那么上面實現(xiàn)的方式能夠?qū)憺?#xff1a;

public static void main(String args[]) {Generics<ArrayList> genList = null;genList = new Generics<ArrayList>(new ArrayList());//下面代碼能夠通過編譯Generics<? extends Collection> genCollention = null;genCollention=new Generics<ArrayList>(new ArrayList());System.out.println("能夠編譯通過并執(zhí)行!");}

1、假設(shè)僅僅指定了<?

>,而沒有extends,則默認是同意Object及其下的不論什么Java類了。也就是隨意類。
2、通配符泛型不單能夠向下限制。如<? extends Collection>,還能夠向上限制,如<? super Double>,表示類型僅僅能接受Double及其上層父類類型,如Number、Object類型的實例。


3、泛型類定義能夠有多個泛型參數(shù)。中間用逗號隔開,還能夠定義泛型接口。泛型方法。

這些都與泛型類中泛型的使用規(guī)則相似。


多接口限制
盡管Java泛型簡單的用 extends 統(tǒng)一的表示了原有的 extends 和 implements 的概念,但仍要遵循應用的體系,Java 僅僅能繼承一個類,但能夠?qū)崿F(xiàn)多個接口,所以你的某個類型須要用 extends 限定,且有多種類型的時候。僅僅能存在一個是類。而且類寫在第一位,接口列在后面。也就是:<T extends SomeClass & interface1 & interface2 & interface3>

這里的樣例僅演示了泛型方法的類型限定,對于泛型類中類型參數(shù)的限制用全然一樣的規(guī)則,僅僅是加在類聲明的頭部,如:

public class Demo<T extends Comparable & Serializable>{//T類型就能夠用Comparable聲明的方法和Seriablizable所擁有的特性了}


最后,強調(diào)一點,是最關(guān)鍵的數(shù)據(jù)是提高通用代碼的安全性,由于它的編譯能力檢查代碼,從而避免異常非常強的依次類型的實現(xiàn)發(fā)生。

了解仿制藥的目的,我相信你會知道如何使用它泛型!
?? ?

轉(zhuǎn)載于:https://www.cnblogs.com/mengfanrong/p/4576821.html

總結(jié)

以上是生活随笔為你收集整理的最佳新秀Java(22)——再次了解泛型的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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

主站蜘蛛池模板: 99干99| 青青草视频免费 | 久久综合欧美 | 国产在线观看免费网站 | 欧美日韩一区二区视频在线观看 | 国产又粗又大又爽视频 | 操操操免费视频 | 久草视频免费看 | 成年网站在线播放 | 精品视频99| 激情婷婷色 | yy1111111| 久久久久国产精品无码免费看 | 麻豆精品久久久久久久99蜜桃 | 日韩最新在线 | 精品在线播放视频 | 偷偷在线观看免费高清av | 成人免费视频网站在线看 | 人妻久久一区二区三区 | 人碰人操 | 福利视频三区 | 夜夜艹天天干 | 亚洲天堂手机在线 | 国产色影院 | 动漫av网站| 亚洲黄网av| 91成人一区 | 黄瓜视频成人 | 亚洲第一色区 | 黄色大片在线免费观看 | 放荡闺蜜高h季红豆h | 黑人vs日本人ⅹxxxhd | 欧美亚洲精品天堂 | 欧美人与动物xxxxx | 日本不卡在线 | 青青草操 | 体内精69xxxxxx| 国产精品美女www爽爽爽视频 | 大肉大捧一进一出视频 | 中出一区 | 五月情网| 成人网在线看 | 麻豆视频免费观看 | 顶臀精品视频www | 偷自在线| 成人超碰在线 | 九九自拍 | 色婷婷av一区二区三区之e本道 | 亚洲欧洲久久 | 96亚洲精品久久久蜜桃 | 丁香六月五月婷婷 | aaaa黄色| 99精品网 | 性www| 国产毛片久久久久久国产毛片 | 日韩中文字幕视频在线 | 久久思| 国产精品第六页 | av资源导航 | 狠狠干av | 日本aⅴ片| exo妈妈mv在线播放免费 | 大桥未久中文字幕 | 日韩欧美中 | 日韩欧美一区二 | 天天操天天爱天天干 | 亚洲av最新在线网址 | 精品久久在线观看 | 色综合视频网 | av在线二区 | 在线观看xxxx | 无码人妻一区二区三区免费n鬼沢 | 日韩av手机在线观看 | 特级a级片 | 谁有毛片网址 | 三级视频网站在线观看 | 黄色在线免费网站 | 强行侵犯视频在线观看 | 日本一本高清视频 | 国产亚洲综合av | 在线视频一区二区三区 | 国产精一区 | 亚洲午夜av| 精品人妻人人做人人爽夜夜爽 | 欧美日韩亚洲另类 | 国产极品视频在线观看 | 日本一级淫片1000部 | 欧美久久天堂 | 丰满人妻一区二区三区四区53 | 午夜免费视频网站 | 欧美一区二区大片 | 国产一区二区三区观看 | 91久久精品日日躁夜夜躁国产 | 女人一级一片30分 | 久一在线视频 | 性猛交xxxx乱大交孕妇印度 | 日韩在线观看视频免费 | 林雅儿欧洲留学恋爱日记在线 | 黑人巨大精品人妻一区二区 |