国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Java 泛型有哪些好處詳解

Java 泛型有哪些好處詳解

2020-08-20 11:10Java之家 Java教程

這篇文章主要介紹了 Java 泛型有哪些好處詳解的相關資料,需要的朋友可以參考下

java 泛型

概要:

       Java 泛型是java SE 1.5的新特性,泛型的本質是參數(shù)化類型,也就是說所操作的數(shù)據(jù)類型被指定為一個參數(shù)。這種參數(shù)類型可以用在類、接口和方法的創(chuàng)建中,分別稱為泛型類、泛型接口、泛型方法。  

       泛型(Generic type 或者 generics)是對 Java 語言的類型系統(tǒng)的一種擴展,以支持創(chuàng)建可以按類型進行參數(shù)化的類??梢园杨愋蛥?shù)看作是使用參數(shù)化類型時指定的類型的一個占位符,就像方法的形式參數(shù)是運行時傳遞的值的占位符一樣。

        可以在集合框架(Collection framework)中看到泛型的動機。例如,Map 類允許您向一個 Map 添加任意類的對象,即使最常見的情況是在給定映射(map)中保存某個特定類型(比如 String)的對象。
因為 Map.get() 被定義為返回 Object,所以一般必須將 Map.get() 的結果強制類型轉換為期望的類型,如下面的代碼所示:

?
1
2
3
Map m = new HashMap();
m.put("key", "blarg");
String s = (String) m.get("key");

要讓程序通過編譯,必須將 get() 的結果強制類型轉換為 String,并且希望結果真的是一個 String。但是有可能某人已經在該映射中保存了不是 String 的東西,這樣的話,上面的代碼將會拋出 ClassCastException。

理想情況下,您可能會得出這樣一個觀點,即 m 是一個 Map,它將 String 鍵映射到 String 值。這可以讓您消除代碼中的強制類型轉換,同時獲得一個附加的類型檢查層,該檢查層可以防止有人將錯誤類型的鍵或值保存在集合中。這就是泛型所做的工作。 

泛型的好處

Java 語言中引入泛型是一個較大的功能增強。不僅語言、類型系統(tǒng)和編譯器有了較大的變化,以支持泛型,而且類庫也進行了大翻修,所以許多重要的類,比如集合框架,都已經成為泛型化的了。
這帶來了很多好處:

1,類型安全。 泛型的主要目標是提高 Java 程序的類型安全。通過知道使用泛型定義的變量的類型限制,編譯器可以在一個高得多的程度上驗證類型假設。沒有泛型,這些假設就只存在于程序員的頭腦中(或者如果幸運的話,還存在于代碼注釋中)。

2,消除強制類型轉換。 泛型的一個附帶好處是,消除源代碼中的許多強制類型轉換。這使得代碼更加可讀,并且減少了出錯機會。 

3,潛在的性能收益。 泛型為較大的優(yōu)化帶來可能。在泛型的初始實現(xiàn)中,編譯器將強制類型轉換(沒有泛型的話,程序員會指定這些強制類型轉換)插入生成的字節(jié)碼中。但是更多類型信息可用于編譯器這一事實,為未來版本的 JVM 的優(yōu)化帶來可能。由于泛型的實現(xiàn)方式,支持泛型(幾乎)不需要 JVM 或類文件更改。所有工作都在編譯器中完成,編譯器生成類似于沒有泛型(和強制類型轉換)時所寫的代碼,只是更能確保類型安全而已。 

 Java語言引入泛型的好處是安全簡單。泛型的好處是在編譯的時候檢查類型安全,并且所有的強制轉換都是自動和隱式的,提高代碼的重用率。

    泛型在使用中還有一些規(guī)則和限制:

    1、泛型的類型參數(shù)只能是類類型(包括自定義類),不能是簡單類型。
    2、同一種泛型可以對應多個版本(因為參數(shù)類型是不確定的),不同版本的泛型類實例是不兼容的。
    3、泛型的類型參數(shù)可以有多個。
    4、泛型的參數(shù)類型可以使用extends語句,例如<T extends superclass>。習慣上成為“有界類型”。
    5、泛型的參數(shù)類型還可以是通配符類型。例如Class<?> classType = Class.forName(Java.lang.String);

    泛 型還有接口、方法等等,內容很多,需要花費一番功夫才能理解掌握并熟練應用。在此給出我曾經了解泛型時候寫出的兩個例子(根據(jù)看的印象寫的),實現(xiàn)同樣的 功能,一個使用了泛型,一個沒有使用,通過對比,可以很快學會泛型的應用,學會這個基本上學會了泛型70%的內容。

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

原文鏈接:http://blog.csdn.net/qq_35101189/article/details/57949135

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25 Weibo Article 26 Weibo Article 27 Weibo Article 28 Weibo Article 29 Weibo Article 30 Weibo Article 31 Weibo Article 32 Weibo Article 33 Weibo Article 34 Weibo Article 35 Weibo Article 36 Weibo Article 37 Weibo Article 38 Weibo Article 39 Weibo Article 40
主站蜘蛛池模板: 欧美精品国产精品 | 99成人在线| 在线色网站 | 亚洲精品久久久 | 激情国产 | 超碰综合| 亚洲第一av| 久久久成人精品 | 亚洲黄色成人av | 日韩国产一区二区三区 | 黄毛片 | 韩国三级午夜理伦三级三 | 亚洲视频免费观看 | 国产在线不卡 | 综合婷婷| 久久精品国产99国产 | 色综合久久88色综合天天6 | 精品久久精品 | 国产不卡精品视频 | 免费高清av| 欧美成人免费在线观看 | 懂色av一区二区三区免费观看 | 日韩亚洲一区二区 | 特及毛片 | 伊人久久综合影院 | 四影虎影www4hu23cmo | 欧美视频区 | 免费久草 | 国产精品九九九 | 久久免费精品 | 亚洲不卡在线观看 | 午夜大片网| 国产电影一区二区三区 | 色噜噜狠狠狠综合曰曰曰88av | 日韩精品免费一区二区夜夜嗨 | 国产精品成人国产乱一区 | 99成人| 91免费网站 | 精品久久一二三区 | 国产精品视频导航 | 国产最新视频 |