欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

JDK15正式發(fā)布(新增功能預(yù)覽)

 更新時(shí)間:2020年09月17日 10:09:32   作者:Java中文社群  
這篇文章主要介紹了JDK15正式發(fā)布,新增功能預(yù)覽,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

JDK 15 在 2020 年 9 月 15 號(hào)正式發(fā)布了,這次發(fā)布的主要功能有:

  • JEP 339:EdDSA 數(shù)字簽名算法
  • JEP 360:密封類(lèi)(預(yù)覽)
  • JEP 371:隱藏類(lèi)
  • JEP 372:刪除 Nashorn JavaScript 引擎
  • JEP 373:重新實(shí)現(xiàn) Legacy DatagramSocket API
  • JEP 374:重新實(shí)現(xiàn) DatagramSocket API
  • JEP 375:實(shí)例模式匹配(第二次預(yù)覽)
  • JEP 377:ZGC:一個(gè)可擴(kuò)展的低延遲垃圾收集器
  • JEP 378:文本塊
  • JEP 379:低暫停時(shí)間垃圾收集器
  • JEP 381:移除 Solaris 和 SPARC 端口
  • JEP 383:外部存儲(chǔ)器訪(fǎng)問(wèn) API(第二個(gè)內(nèi)置程序)
  • JEP 384:Records(第二次預(yù)覽)
  • JEP 385:不推薦的 RMI 激活去除

JEP:JDK Enhancement Proposals,JDK 增強(qiáng)建議,也就是 JDK 的特性新增和改進(jìn)提案。

這些年發(fā)布的版本對(duì)應(yīng)的 JEPs 數(shù)量如下圖所示:

發(fā)布版本說(shuō)明

根據(jù)發(fā)布的規(guī)劃,這次發(fā)布的 JDK 15 將是一個(gè)短期的過(guò)度版,只會(huì)被 Oracle 支持(維護(hù))6 個(gè)月,直到明年 3 月的 JDK 16 發(fā)布此版本將停止維護(hù)。而 Oracle 下一個(gè)長(zhǎng)期支持版(LTS 版)會(huì)在明年的 9 月份候發(fā)布(Java 17),LTS 版每 3 年發(fā)布一個(gè),上一次長(zhǎng)期支持版是 18 年 9 月發(fā)布的 JDK 11。

JDK 15 新功能說(shuō)明

JDK 15 為用戶(hù)提供了十四項(xiàng)主要的增強(qiáng)/更改,包括一個(gè)孵化器模塊,三個(gè)預(yù)覽功能,兩個(gè)不推薦使用的功能以及兩個(gè)刪除功能。

1、EdDSA 數(shù)字簽名算法

新加入 Edwards-Curve 數(shù)字簽名算法(EdDSA)實(shí)現(xiàn)加密簽名。在許多其它加密庫(kù)(如 OpenSSL 和 BoringSSL)中得到支持。與 JDK 中的現(xiàn)有簽名方案相比,EdDSA 具有更高的安全性和性能。這是一個(gè)新的功能。

2、隱藏類(lèi)

此功能可幫助需要在運(yùn)行時(shí)生成類(lèi)的框架??蚣苌深?lèi)需要?jiǎng)討B(tài)擴(kuò)展其行為,但是又希望限制對(duì)這些類(lèi)的訪(fǎng)問(wèn)。隱藏類(lèi)很有用,因?yàn)樗鼈冎荒芡ㄟ^(guò)反射訪(fǎng)問(wèn),而不能從普通字節(jié)碼訪(fǎng)問(wèn)。此外,隱藏類(lèi)可以獨(dú)立于其他類(lèi)加載,這可以減少框架的內(nèi)存占用。這是一個(gè)新的功能。

3、重新實(shí)現(xiàn) DatagramSocket API

重新實(shí)現(xiàn)舊版 DatagramSocket API,更簡(jiǎn)單、更現(xiàn)代的實(shí)現(xiàn)來(lái)代替java.net.DatagramSocketjava.net.MulticastSocketAPI 的基礎(chǔ)實(shí)現(xiàn),提高了 JDK 的可維護(hù)性和穩(wěn)定性。

4、ZGC 功能轉(zhuǎn)正

ZGC 已由JEP 333集成到JDK 11 中,其目標(biāo)是通過(guò)減少 GC 停頓時(shí)間來(lái)提高性能。借助 JEP 377,ZGC 從預(yù)覽功能轉(zhuǎn)變?yōu)樯a(chǎn)功能。

5、文本塊功能轉(zhuǎn)正

文本塊由JEP 355在 2019 年提出,文本塊是一種多行字符串文字,它避免了大多數(shù)轉(zhuǎn)義序列的需要,以一種可預(yù)測(cè)的方式自動(dòng)設(shè)置字符串的格式,并在需要時(shí)使開(kāi)發(fā)人員可以控制格式。借助 JEP 378,文本塊已成為 Java 語(yǔ)言的永久功能。

6、Shenandoah 垃圾回收算法轉(zhuǎn)正

Shenandoah 垃圾回收從實(shí)驗(yàn)特性變?yōu)楫a(chǎn)品特性。這是一個(gè)從 JDK 12 引入的回收算法,該算法通過(guò)與正在運(yùn)行的 Java 線(xiàn)程同時(shí)進(jìn)行疏散工作來(lái)減少 GC 暫停時(shí)間。Shenandoah 的暫停時(shí)間與堆大小無(wú)關(guān),無(wú)論堆棧是 200 MB 還是 200 GB,都具有相同的一致暫停時(shí)間。

7、密封類(lèi)(預(yù)覽)

通過(guò)密封的類(lèi)和接口來(lái)增強(qiáng) Java 編程語(yǔ)言,用于限制超類(lèi)的使用,密封的類(lèi)和接口限制其它可能繼承或?qū)崿F(xiàn)它們的其它類(lèi)或接口。

8、instanceof 自動(dòng)匹配模式(預(yù)覽)

舊寫(xiě)法:

// 先判斷類(lèi)型
if (obj instanceof String) {
  // 然后轉(zhuǎn)換
  String s = (String) obj;
  // 然后才能使用
}

新寫(xiě)法:

if (obj instanceof String s) {
  // 如果類(lèi)型匹配 直接使用
} else {
  // 如果類(lèi)型不匹配則不能直接使用
}

這是第二次預(yù)覽該功能,我們已經(jīng)在 Java 14 中首次預(yù)覽過(guò)該特性。

9、Records Class(預(yù)覽)

Records Class 也是第二次出現(xiàn)的預(yù)覽功能,它在 JDK 14 中也出現(xiàn)過(guò)一次了,使用 Record 可以更方便的創(chuàng)建一個(gè)常量類(lèi),使用的前后代碼對(duì)比如下。

舊寫(xiě)法:

class Point {
  private final int x;
  private final int y;

  Point(int x, int y) { 
    this.x = x;
    this.y = y;
  }

  int x() { return x; }
  int y() { return y; }

  public boolean equals(Object o) { 
    if (!(o instanceof Point)) return false;
    Point other = (Point) o;
    return other.x == x && other.y = y;
  }

  public int hashCode() {
    return Objects.hash(x, y);
  }

  public String toString() { 
    return String.format("Point[x=%d, y=%d]", x, y);
  }
}

新寫(xiě)法:

record Point(int x, int y) { }

也就是說(shuō)在使用了 record 之后,就可以用一行代碼編寫(xiě)出一個(gè)常量類(lèi),并且這個(gè)常量類(lèi)還包含了構(gòu)造方法、toString()、equals() 和 hashCode() 等方法。

10、外部存儲(chǔ)器訪(fǎng)問(wèn) API(預(yù)覽)

目的是引入一個(gè) API,以允許 Java 程序安全有效地訪(fǎng)問(wèn) Java 堆之外的外部?jī)?nèi)存。這同樣是 Java 14 的一個(gè)預(yù)覽特性。

11、其它功能

其它功能里面還有一些棄用和不建議使用的功能,比如移除了 Nashorn JavaScript 引擎,同時(shí)也移除了刪除 Solaris 和 SPARC 端口,并標(biāo)記了一些棄用功能。

參考 & 鳴謝

碼農(nóng)小胖哥:https://mp.weixin.qq.com/s/rhfSLW0wfe73xgbRVvX46Q

官方日志:https://openjdk.java.net/projects/jdk/15/

到此這篇關(guān)于JDK15正式發(fā)布(新增功能預(yù)覽)的文章就介紹到這了,更多相關(guān)JDK15發(fā)布內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java核心庫(kù)實(shí)現(xiàn)AOP過(guò)程

    Java核心庫(kù)實(shí)現(xiàn)AOP過(guò)程

    給大家分享一下利用Java核心庫(kù)實(shí)現(xiàn)簡(jiǎn)單的AOP的經(jīng)驗(yàn)分享和教學(xué),需要的讀者們參考下吧。
    2017-12-12
  • springboot編程式事務(wù)TransactionTemplate的使用說(shuō)明

    springboot編程式事務(wù)TransactionTemplate的使用說(shuō)明

    這篇文章主要介紹了springboot編程式事務(wù)TransactionTemplate的使用說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • java設(shè)計(jì)模式-代理模式(實(shí)例講解)

    java設(shè)計(jì)模式-代理模式(實(shí)例講解)

    下面小編就為大家?guī)?lái)一篇java設(shè)計(jì)模式-代理模式(實(shí)例講解)。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-09-09
  • Java中Spring WebSocket詳解

    Java中Spring WebSocket詳解

    本篇文章主要通過(guò)代碼給大家詳細(xì)分析了Java中Spring WebSocket的用法,需要的讀者們參考學(xué)習(xí)下吧。
    2017-12-12
  • java實(shí)現(xiàn)屏蔽詞功能

    java實(shí)現(xiàn)屏蔽詞功能

    這篇文章主要介紹了java實(shí)現(xiàn)屏蔽詞功能,類(lèi)似貼吧里面屏蔽各種用戶(hù)的發(fā)帖內(nèi)容,感興趣的小伙伴們可以參考一下
    2015-12-12
  • Springmvc數(shù)據(jù)格式化原理及代碼案例

    Springmvc數(shù)據(jù)格式化原理及代碼案例

    這篇文章主要介紹了Springmvc數(shù)據(jù)格式化原理及代碼案例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • Springboot中實(shí)現(xiàn)接口冪等性的4種方案小結(jié)

    Springboot中實(shí)現(xiàn)接口冪等性的4種方案小結(jié)

    本文主要介紹了Springboot中實(shí)現(xiàn)接口冪等性,包含數(shù)據(jù)庫(kù)的冪等,數(shù)據(jù)庫(kù)的冪等,Redis的冪等性和Token + 時(shí)間戳的冪等性,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-03-03
  • JAVA8 STREAM COLLECT GROUPBY分組實(shí)例解析

    JAVA8 STREAM COLLECT GROUPBY分組實(shí)例解析

    這篇文章主要介紹了JAVA8 STREAM COLLECT GROUPBY分組實(shí)例解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-01-01
  • 整理java讀書(shū)筆記十五之java中的內(nèi)部類(lèi)

    整理java讀書(shū)筆記十五之java中的內(nèi)部類(lèi)

    內(nèi)部類(lèi)是指在一個(gè)外部類(lèi)的內(nèi)部再定義一個(gè)類(lèi)。類(lèi)名不需要和文件夾相同。本文給大家分享java讀書(shū)筆記十五之java中的內(nèi)部類(lèi),對(duì)java讀書(shū)筆記相關(guān)知識(shí)感興趣的朋友一起學(xué)習(xí)吧
    2015-12-12
  • Java關(guān)鍵字volatile詳析

    Java關(guān)鍵字volatile詳析

    這篇文章主要介紹了Java關(guān)鍵字volatile,volatile關(guān)鍵字可以說(shuō)是Java虛擬機(jī)提供的最輕量級(jí)的同步機(jī)制,但對(duì)于為什么它只能保證可見(jiàn)性,不保證原子性,它又是如何禁用指令重排的,還有很多同學(xué)沒(méi)徹底理解,文章會(huì)讓大家牢掌握一個(gè)Java核心知識(shí)點(diǎn)
    2022-01-01

最新評(píng)論