亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java中泛型的作用是什么

發布時間:2020-06-26 11:14:29 來源:億速云 閱讀:135 作者:Leah 欄目:編程語言

java中泛型的作用是什么?很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

在java中,<>指的是泛型。泛型是在編譯期間能發現類型的錯誤,防止非定義的類型出現。泛型的本質是參數化類型,也就是說所操作的數據類型被指定為一個參數。

泛型的定義:

泛型是程序設計語言的一種特性。允許程序員在強類型程序設計語言中編寫 體驗泛型代碼時定義一些可變部分,那些部分在使用前必須作出指明。

各種程序設計語言和其編譯器、運行環境對泛型的支持均不一樣。將類型參數化以達到代碼復用提高軟件開發工作效率的一種數據類型。

泛型類是引用類型,是堆對象,主要是引入了類型參數這個概念。

使用泛型的好處

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

1、類型安全

泛型的主要目標是提高Java程序的類型安全。通過知道使用泛型定義的變量的類型限制,編譯器可以在非常高的層次上驗證類型假設。沒有泛型,這些假設就只存在于系統開發人員的頭腦中。

通過在變量聲明中捕獲這一附加的類型信息,泛型允許編譯器實施這些附加的類型約束。類型錯誤現在就可以在編譯時被捕獲了,而不是在運行時當作ClassCastException展示出來。將類型檢查從運行時挪到編譯時有助于Java開發人員更早、更容易地找到錯誤,并可提高程序的可靠性。

2、消除強制類型轉換

泛型的一個附帶好處是,消除源代碼中的許多強制類型轉換。這使得代碼更加可讀,并且減少了出錯機會。盡管減少強制類型轉換可以提高使用泛型類的代碼的累贊程度,但是聲明泛型變量時卻會帶來相應的累贊程度。在簡單的程序中使用一次泛型變量不會降低代碼累贊程度。但是對于多次使用泛型變量的大型程序來說,則可以累積起來降低累贊程度。所以泛型消除了強制類型轉換之后,會使得代碼加清晰和筒潔。

2、消除強制類型轉換

泛型的一個附帶好處是,消除源代碼中的許多強制類型轉換。這使得代碼更加可讀,并且減少了出錯機會。盡管減少強制類型轉換可以提高使用泛型類的代碼的累贊程度,但是聲明泛型變量時卻會帶來相應的累贊程度。在簡單的程序中使用一次泛型變量不會降低代碼累贊程度。但是對于多次使用泛型變量的大型程序來說,則可以累積起來降低累贊程度。所以泛型消除了強制類型轉換之后,會使得代碼加清晰和筒潔。

3、更高的運行效率

在非泛型編程中,將筒單類型作為Object傳遞時會引起Boxing(裝箱)和Unboxing(拆箱)操作,這兩個過程都是具有很大開銷的。引入泛型后,就不必進行Boxing和Unboxing操作了,所以運行效率相對較高,特別在對集合操作非常頻繁的系統中,這個特點帶來的性能提升更加明顯。

4、潛在的性能收益

泛型為較大的優化帶來可能。在泛型的初始實現中,編譯器將強制類型轉換(沒有泛型的話,Java系統開發人員會指定這些強制類型轉換)插入生成的字節碼中。但是更多類型信息可用于編譯器這一事實,為未來版本的JVM的優化帶來可能。

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

永兴县| 广宗县| 玛沁县| 泸西县| 元氏县| 凤台县| 乐清市| 巴里| 株洲县| 普格县| 大英县| 金塔县| 凉城县| 星子县| 且末县| 丹东市| 衢州市| 涡阳县| 宜州市| 钟山县| 安岳县| 台前县| 澄江县| 康定县| 清水县| 鄂州市| 通河县| 鹿泉市| 曲松县| 宁乡县| 平顺县| 金塔县| 逊克县| 柳州市| 隆尧县| 邛崃市| 徐水县| 蓝山县| 同仁县| 鄂尔多斯市| 灵山县|