• <ruby id="bi9vj"><b id="bi9vj"></b></ruby>

        <b id="bi9vj"></b>

        JDK/Java?14?可能帶來什么新特性?

        h4cd
         h4cd
        發布于 2019年10月11日
        收藏 11

        JDK/Java 13 在一個月前已經發布,該版本帶來了 5 大新特性,筆者觀察到其中的 Text Blocks(文本塊)特性似乎被討論最多。文本塊特性與常見的 Python """any input""" 特性一樣,它支持多行字符串文字,可以不需要使用大多數轉義序列,同時可以讓開發人員控制格式。雖然這不是特別復雜的特性,但對于開發中想將 HTML 代碼引入 Java 來說是極大的便利,代碼可讀性也極大提高。

        關于 Java 13 的其它新特性這里不贅述,感興趣的話可以看看文末推薦的幾篇內容。這里想寫的其實是:按照慣例,可以開始盯著 Java 14 的新特性了。

        JDK 14 現在處于 Early-Access(EA,早期訪問)階段,按照發布周期正式版本將于明年 3 月 17 日發布。

        目前最新版本是 build 17,各個 build 的更新說明可以查看:https://jdk.java.net/13/release-notes

        本文引用 InfoWorld 的報導,介紹一下目前 JDK 14 中可能會出現的 3 項新特性。其中有兩個特性被正式提了出來,還有一個特性則是預測性質,分別看看:

        • 改進 NullPointerExceptions,通過準確描述哪些變量為 null 來提高 JVM 生成的異常的可用性。該提案的作者希望為開發人員和支持人員提供有關程序為何異常終止的有用信息,并通過更清楚地將動態異常與靜態程序代碼相關聯來提高對程序的理解。
        • 非易失性映射的字節緩沖將添加新的 JDK 特定文件映射模式,該模式允許 FileChannel API 用于創建引用非易失性內存(NVM)的 MappedByteBuffer 實例。NVM 使開發者可以跨程序構建和更新程序狀態,而不會產生輸入和輸出操作通常需要的大量復制和翻譯成本,這對于交易程序而言尤其重要。該增強提案主要目標是確保客戶端可以連貫有效地從 Java 程序訪問和更新 NVM;第二個目標是使用 Unsafe 類中定義的受限制 JDK 內部 API 來實現此提交行為,因此可以由可能需要提交給 NVM 的 MappedByteBuffer 之外的其它類重用;另一個目標是允許現有 API 跟蹤在 NVM 上映射的緩沖區,以進行監控和管理。
        • Switch Expressions 在 JDK 12 與 13 中都是預覽狀態,預計在 JDK 14 中成為穩定特性。switch 表達式擴展了 switch 語句,使其不僅可以作為語句(statement),還可以作為表達式(expression),并且兩種寫法都可以使用傳統的 switch 語法,或者使用簡化的“case L ->”模式匹配語法作用于不同范圍并控制執行流。這些更改將簡化日常編碼工作,并為 switch 中的模式匹配(JEP 305)做好準備。

        JDK 14 EA 版本下載地址:https://jdk.java.net/13

        最后,需要注意的是 EA 階段的特性也有可能永遠不會出現在最終的 JDK/Java 14 正式 GA 版本中。

        回到本文開頭,關于 Java 13 的相關內容:

        本站文章除注明轉載外,均為本站原創或編譯。歡迎任何形式的轉載,但請務必注明出處,尊重他人勞動共創開源社區。
        轉載請注明:文章轉載自 OSCHINA 社區 [http://www.url23.com]
        本文標題:JDK/Java?14?可能帶來什么新特性?
        加載中

        精彩評論

        這波天秀
        這波天秀
        放心,中國的javaer 還會繼續打磨jdk8,java8之后再無java
        longforus
        longforus
        萬年java8
        dwingo
        dwingo
        JVM發展這么多年了,有效的優化手段基本用盡,已接近優化極限,現在的更新即使還有點性能提升也不值一提了.
        冷月V天一
        jdk哪個版本沒有gc的優化?這是選擇性看不見呀
        大后鋒
        大后鋒
        新項目都轉brain fuck了,清爽的慘了

        最新評論(62

        厲害吧24中
        厲害吧24中
        別人都用Java8,你敢用Java11?給別人打包搞死你,到最后大家都是Java8,萬年Java8。。。
        RobotPainter
        RobotPainter
        快點更啊,vue也是,所謂的不穩定人家敢放出來?一jio踢開老古董,生產力啊,學不動?不存在的。還有那些以前的優化文章,Java自身在進化逐漸抹平以前的不足,還看啥優化文章,把新特性給用上發揮地寫才是。
        JPer
        JPer
        什么?大清亡了?
        h
        heike07
        java7 哎呀,你程序好老啊!!! java8 額,不錯,穩定版 java9以上 什么!!!! 為啥不支持這個方法了,這……
        會飛的石頭
        會飛的石頭
        玩不動了,轉go!
        開源中國首席大督查
        開源中國首席大督查
        去年公司項目剛升的jdk8,這特么都14了,跟不上啊跟不上
        青春無罪
        堅持JAVA8一百年不動搖
        y
        yozoco
        為什么java一出新就來上了什么新特征,為什么不是性能提升多少
        dwingo
        dwingo
        JVM發展這么多年了,有效的優化手段基本用盡,已接近優化極限,現在的更新即使還有點性能提升也不值一提了.
        y
        yozoco
        應該換個思路發展了,jvm是Android的卡點了,還是華為做的對
        dwingo
        dwingo
        華為的做法也有其局限性, 因為這塊已經沒有銀彈了, 如果能在某出做出超出現有JVM的成績, 必然在其它某些地方失去功能或性能. 如最近JDK頻頻改進GC也主要是優化暫停,而對實際的GC吞吐量反而是負優化.
        Hotspot JVM的發展重心仍然是服務器端, 這就給華為一些客戶端上做優化取舍的機會了, 不過還是得看開放出來親自對比的評測才能下確切的結論.
        網癮少年徐志摩
        網癮少年徐志摩
        zgc了解一下
        冷月V天一
        jdk哪個版本沒有gc的優化?這是選擇性看不見呀
        TruthBean
        TruthBean
        新項目都轉nodejs了,清爽得一逼
        返回頂部
        頂部
        聚看影院