自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

JDK 15:Java 15中的新功能

開發(fā) 后端
隨著Java 14于3月17日全面上市,將在2020年9月15日推出Java 15的后續(xù)產品。到目前為止,已經計劃對該版本進行八次正式更改。 另外兩個提案-加密簽名和記錄的第二個預覽-可能很快就會成為正式提案。

標準Java的下一版本將具有文本塊,垃圾收集器,隱藏的類以及模式匹配和記錄的預覽。

隨著Java 14于3月17日全面上市,將在2020年9月15日推出Java 15的后續(xù)產品。到目前為止,已經計劃對該版本進行八次正式更改。 另外兩個提案-加密簽名和記錄的第二個預覽-可能很快就會成為正式提案。

[[325610]]

Java開發(fā)工具包(JDK)15為下一版本的Java SE(標準版)提供了基礎。 在9月全面上市之前,將在6月和7月進行縮減階段,然后在8月發(fā)布兩個候選版本。

OpenJDK 15提案的詳細信息:

Records, 是充當不可變數據的透明載體的類,將在JDK 14中作為早期預覽首次亮相后,將包含在JDK 15的第二個預覽版本中。該計劃的目標包括設計一個表示對象的構造,以表達 簡單的值聚合,幫助程序員專注于對不可變數據建模而不是擴展行為,自動實現(xiàn)數據驅動的方法(例如equals和評估者),并保留長期的Java原則,例如標稱類型和遷移兼容性。

基于愛德華茲曲線數字簽名算法(EdDSA)的密碼簽名。 EdDSA是一種現(xiàn)代的橢圓曲線方案,具有優(yōu)于JDK中現(xiàn)有簽名方案的優(yōu)勢。 EdDSA僅在SunEC提供者中實施。 與其他簽名方案相比,EdDSA具有更高的安全性和性能,因此需求旺盛。 加密庫(例如OpenSSL和BoringSSL)已經支持該功能。

通過使用更簡單,更現(xiàn)代的實現(xiàn)來替換java.net.datagram.Socket和java.net.MulticastSocket API的基礎實現(xiàn),從而重新實現(xiàn)傳統(tǒng)的DatagramSocket API,該實現(xiàn)1.易于調試和維護,并且2.可與當前正在使用的虛擬線程一起使用 在Project Loom中進行了探索。 新計劃是對JDK增強建議353的后續(xù),該建議重新實現(xiàn)了舊版Socket API。 java.net.datagram.Socket和java.net.MulticastSocket的當前實現(xiàn)可以追溯到JDK 1.0,而IPv6仍在開發(fā)中。 因此,MulticastSocket的當前實現(xiàn)嘗試以難以維護的方式協(xié)調IPv4和IPv6。

默認情況下禁用偏向鎖定,并棄用所有相關的命令行選項。 目標是確定是否需要繼續(xù)支持代價昂貴的,具有維護成本的有偏鎖定的傳統(tǒng)同步優(yōu)化,該優(yōu)化在HotSpot虛擬機中用于減少無競爭鎖定的開銷。 盡管某些Java應用程序可能會在禁用偏置鎖定的情況下看到性能下降的趨勢,但是偏置鎖定的性能提升通常不如從前那樣明顯。

在JDK 14中的先前預覽之后,是instanceof的模式匹配的第二次預覽。模式匹配使程序中的通用邏輯(主要是從對象中有條件地提取組件)得以更簡潔地表達。 Haskell和C#等語言因其簡潔性和安全性而接受了模式匹配。

隱藏類,即不能被其他類的字節(jié)碼直接使用的類,是供在運行時生成類并通過反射間接使用它們的框架使用的??梢詫㈦[藏類定義為訪問控制嵌套的成員,并且可以獨立于其他類進行卸載。該提案將通過啟用標準API來定義無法發(fā)現(xiàn)且生命周期有限的隱藏類,從而提高JVM上所有語言的效率。 JDK內部和外部的框架將能夠動態(tài)生成可以代替定義隱藏類的類?;贘VM構建的許多語言都依靠動態(tài)類生成來提高靈活性和效率。該提案的目標包括:允許框架將類定義為框架的不可發(fā)現(xiàn)的實現(xiàn)細節(jié),因此它們不能被其他類鏈接,也不能通過反射來發(fā)現(xiàn);支持使用不可發(fā)現(xiàn)的類擴展訪問控制嵌套;并支持主動卸載不可發(fā)現(xiàn)的類,因此框架可以靈活地定義所需的數量。另一個目標是棄用非標準API misc.Unsafe::defineAnonymousClass,以棄用將來的發(fā)行版。另外,由于此提議,Java語言也不會更改。

根據該提議,Z垃圾收集器(ZGC)將從實驗功能升級為產品。 ZGC已集成到2018年9月發(fā)布的JDK 11中,是一個可擴展的低延遲垃圾回收器。 引入ZGC是一項實驗功能,因為Java的開發(fā)人員決定應謹慎且逐步地引入這種規(guī)模和復雜性的功能。 從那時起,添加了許多改進,從并發(fā)類卸載,未使用內存的未提交,對數據類共享的支持到改進的NUMA感知和多線程堆預觸。 此外,最大堆大小已從4 TB增加到16 TB。 支持的平臺包括Linux,Windows和MacOS。

在JDK 14和JDK 13中都預覽過的文本塊旨在通過簡化表示跨幾行源代碼的字符串的表達,同時避免在常見情況下的轉義序列,從而簡化了編寫Java程序的任務。 文本塊是一種多行字符串文字,它避免了大多數轉義序列的需要,以可預測的方式自動設置字符串格式,并在需要時為開發(fā)人員提供了對該格式的控制權。 文本塊建議的目標是提高Java程序中字符串的可讀性,這些字符串表示用非Java語言編寫的代碼。 另一個目標是通過規(guī)定任何新構造都可以表示與字符串文字相同的字符串集,解釋相同的轉義序列并以與字符串文字相同的方式進行操作來支持從字符串文字的遷移。 OpenJDK開發(fā)人員希望添加轉義序列來管理顯式空白和換行控件。

Shenandoah的低暫停時間垃圾收集器將成為生產功能并退出實驗階段。 一年前已將其集成到JDK中。

移除Nashorn,該功能于2014年3月在JDK 8中首次亮相,但此后已被諸如GraalVM之類的技術淘汰。 OpenJDK 15提案要求刪除Nashorn API和用于調用Nashorn的jjs命令行工具。

 

責任編輯:未麗燕 來源: 今日頭條
相關推薦

2011-03-01 14:08:51

Fedora 15

2021-09-13 14:18:29

iOS蘋果系統(tǒng)

2012-03-20 09:25:29

2020-09-17 08:09:16

JDK發(fā)布預覽

2021-08-02 15:28:58

iOS蘋果系統(tǒng)

2023-04-23 14:55:10

開發(fā)TypeScript裝飾器

2021-07-15 18:25:10

iOS 15 Beta蘋果Safari

2024-06-11 10:13:52

2021-08-01 22:46:10

iOS蘋果系統(tǒng)

2020-12-08 16:29:44

JDK 16Java編程語言

2021-09-22 08:48:32

iOS應用系統(tǒng)

2021-08-07 22:28:47

iOS蘋果系統(tǒng)

2024-05-31 11:32:32

2021-08-02 14:44:03

iOS 15查找iPhone

2021-07-28 09:39:48

iOS 15iPad OS 15蘋果

2021-01-29 06:06:12

JDK15類加載Java

2015-02-05 14:31:21

戴爾移動工作站

2024-04-29 08:20:40

Java后端Redlock

2021-09-23 08:45:46

iOS 15蘋果AI

2021-04-11 11:09:27

iOS蘋果系統(tǒng)
點贊
收藏

51CTO技術棧公眾號