<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          勁爆!Java 通用泛型要來(lái)了。。

          共 1458字,需瀏覽 3分鐘

           ·

          2022-05-29 09:42

          往期熱門文章:

          1、如何寫(xiě)出讓同事吐血的代碼?

          2、遭棄用的 Docker Desktop 放大招!宣布支持 Linux

          3、IDEA公司再發(fā)新神器!超越 VS Code 騷操作!

          4、推薦好用 Spring Boot 內(nèi)置工具類

          5、面試被問(wèn)SpringBoot自動(dòng)裝配原理,怎么破?

          文 | 白開(kāi)水
          出品 | OSC開(kāi)源社區(qū)(ID:oschina2013)
          Infoworld 消息指出,根據(jù) OpenJDK 提案,Java 將獲得通用泛型(universal generics),此舉旨在使該語(yǔ)言更易于使用。不過(guò)該規(guī)劃本身需要花費(fèi)數(shù)年時(shí)間才能實(shí)現(xiàn)。
          通用泛型最初將通過(guò) OpenJDK 社區(qū)中的三個(gè)提案來(lái)實(shí)現(xiàn)。
          甲骨文方面表示,這些提議將極大地改變 Java 語(yǔ)言和 JVM,結(jié)合類的靈活性和基元的性能。一切(包括基元)都將成為一個(gè)對(duì)象。但是所選擇的路徑并不會(huì)降低基元的性能,而是使類的性能與基元一樣。
          三個(gè) JDK Enhancement Proposals(JEP)中的每一個(gè)都提供了不同的功能,但想要達(dá)到預(yù)期的效果,則需要結(jié)合這三個(gè)提案。
          其中最主要的是一份于 2 月創(chuàng)建并于 10 月 29 日更新的 JEP 草案,它要求通過(guò)允許 Java 類型變量覆蓋這兩種類型來(lái)統(tǒng)一對(duì)泛型代碼中引用和原始值類型的處理。將會(huì)產(chǎn)生新的 warnings,以維護(hù)通用代碼的安全保證。
          使用用戶聲明的原始對(duì)象增強(qiáng) Java 對(duì)象模型的第二個(gè) JEP 將作為先決條件;計(jì)劃將基本基元與對(duì)象統(tǒng)一起來(lái)的第三個(gè) JEP,預(yù)計(jì)也會(huì)推進(jìn)。其他 JEP 則將隨之更新標(biāo)準(zhǔn)庫(kù)、解決 null warnings 和使庫(kù)為專業(yè)化做好準(zhǔn)備,并在 JVM 中引入通用 API 的運(yùn)行時(shí)專業(yè)化。
          通用泛型計(jì)劃提倡讓 generic API 直接支持 primitive value types,以便直接對(duì) custom-defined primitives 進(jìn)行操作;引用類型也將被支持。
          提案指出,理想情況下這應(yīng)該是 Java 泛型的默認(rèn)行為,這樣 primitive value types 就可以完全參與到 Java 生態(tài)系統(tǒng)中。目前還沒(méi)有確定通用泛型何時(shí)會(huì)出現(xiàn)在 Java 中,但預(yù)計(jì)仍需要很多年才能實(shí)現(xiàn)。
          且通用泛型將擴(kuò)展平臺(tái)中現(xiàn)有的泛型能力。
          2004年推出的 Java 2 Platform 和 Standard Edition 5.0 為語(yǔ)言和平臺(tái)帶來(lái)了泛型,允許開(kāi)發(fā)者識(shí)別他們想要存儲(chǔ)在集合中的內(nèi)容,并使迭代器類型安全。但在 2004 年的泛型迭代中,開(kāi)發(fā)者只能對(duì)引用類型進(jìn)行泛化。
          通過(guò)將基元與引用統(tǒng)一起來(lái),可以采取下一步措施,允許類型參數(shù)在所有類型上進(jìn)行范圍化。
          值得一提的是,Java 并不是唯一關(guān)注泛型功能的語(yǔ)言,Go 1.18 也計(jì)劃支持泛型。

          最近熱文閱讀:

          1、如何寫(xiě)出讓同事吐血的代碼?
          2、遭棄用的 Docker Desktop 放大招!宣布支持 Linux
          3、IDEA公司再發(fā)新神器!超越 VS Code 騷操作!
          4、推薦好用 Spring Boot 內(nèi)置工具類
          5、五個(gè)刁鉆的String面試問(wèn)題及解答
          6、IntelliJ平臺(tái)將完全停止使用Log4j
          7、神操作!我把 3000 行代碼重構(gòu)成 15 行!
          8、我用Java幾分鐘處理完30億個(gè)數(shù)據(jù)...
          9、一款自動(dòng)生成單元測(cè)試的 IDEA 插件
          10、微軟 10 大最受歡迎 GitHub 項(xiàng)目,最高 Star 數(shù)量 13 萬(wàn)
          關(guān)注公眾號(hào),你想要的Java都在這里

          瀏覽 45
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  亚洲人妻av| 精品夜夜澡人妻无码AV | 成人午夜精品无码区久久中文 | 国产91在线视频 | 少年阿宾麻豆传媒 |