- 軟件大小:154.29M
- 軟件語言(yán):中文
- 軟件類型:國產軟件
- 軟件類別:免費軟件 / 編(biān)程工具
- 更新時間(jiān):2019-11-21 16:10
- 運行環境:WinXP, Win7, Win8, Win10
- 軟(ruǎn)件等級:
- 軟件廠商:
- 官方(fāng)網站(zhàn):http://openjdk.java.net/projects/jdk/12/
149.00M/中文/1.3
153.32M/中文/2.6
322.46M/中文/2.8
15.91M/中文/5.0
67.48M/中文/10.0
jdk13官方(fāng)版是全新的(de)jdk版本,整個jdk使用(yòng)起來就(jiù)是超級方便(biàn),更新(xīn)了(le)很多(duō)不太(tài)方(fāng)便的地方,而且還(hái)能自己查(chá)看最新的一(yī)些數據,真是太(tài)好用了,而且還能快(kuài)速(sù)的查看表達式條件,喜歡的用戶千萬不要(yào)錯(cuò)過了,快來綠(lǜ)色資(zī)源網下載吧!
新版本(běn)帶來了一些增強功能,包括增強的switch語句(jù),增(zēng)強的垃圾收集器功能,支持微基(jī)準測(cè)試,支持默認的類數據(jù)共享等等,其中增強的switch語句不(bú)僅可以作為語句(jù)也可(kě)以作為表達式(shì),無論作為(wéi)語句或(huò)者作為表達式,switch都可以(yǐ)使(shǐ)用(yòng)傳統(tǒng)/簡化的作用域和控(kòng)製(zhì)流行為,這將有助於簡化代碼,並為(wéi)在(zài)switch中(zhōng)使用模式匹配鋪(pù)平道路。而jdk12中添加了一套微基準測試,大約100個,這簡(jiǎn)化(huà)了現有微基準測試的運(yùn)行和新基準測試的創建(jiàn)過(guò)程,更多功能可自行體驗。
安裝教程(chéng)和12一模(mó)一樣,可以參考下麵安(ān)裝(zhuāng)
1、JVM 常量 API
JEP 334引入了(le)一個API,用於建模關鍵類文件(jiàn)和運行時artifacts,例(lì)如常量(liàng)池。 此API將包括ClassDesc,MethodTypeDesc,MethodHandleDesc和DynamicConstantDesc等類。此(cǐ) API 對於操作類(lèi)和方法的工具很有幫助(zhù)。
2、G1的可中斷 mixed GC
此功能通過(guò)將Mixed GC集拆分為(wéi)強製(zhì)部分和可(kě)選部分(fèn),使G1垃(lā)圾(jī)收集器(qì)更(gèng)有效地中止(zhǐ)垃圾收集(jí)過程。通過允(yǔn)許垃圾收集過(guò)程(chéng)優先處理強製集,g1可以更(gèng)多滿足滿足暫停時間目標。
G1是(shì)一個垃(lā)圾收集器(qì),設計(jì)用於具有大量內存(cún)的(de)多處理(lǐ)器機(jī)器。由於它提高(gāo)了性能效率,g1垃圾收集器最終將取代cms垃圾收集器。
G1垃圾收集(jí)器(qì)的(de)主要目標(biāo)之(zhī)一(yī)是滿足用(yòng)戶設置的暫停時間。G1采用一個(gè)分析引擎來選擇在收集期間要處理的工作量。此選擇過程(chéng)的結果是(shì)一(yī)組稱為GC集的區域。一(yī)旦GC集建立(lì)並且GC已經開始,那麽G1就無(wú)法停止。
如果G1發(fā)現GC集選擇(zé)選擇了錯誤的區域,它(tā)會將GC區域的拆分為兩部分(fèn)(強製(zhì)部(bù)分和(hé)可選部分)來切換到處理Mix GC的增量模式(shì)。如果未達到(dào)暫停時間目標(biāo),則(zé)停止對可選部(bù)分的(de)垃圾收(shōu)集。
3、G1歸(guī)還不使用的內存
此功能的主(zhǔ)要(yào)目(mù)標(biāo)是改進G1垃圾(jī)收集器,以便(biàn)在(zài)不活動時將(jiāng)Java堆內存歸還給(gěi)操作係統。 為(wéi)實現此目標(biāo),G1將在低應用程序活動期間定期生成或持(chí)續循環(huán)檢查完整(zhěng)的Java堆(duī)使用情況。
這將立即歸還未使用(yòng)的部分(fèn)Java堆內存(cún)給操作係統。 用戶可以選擇執行FULL GC以最大(dà)化返回的內存量。
4、移除多餘ARM64實現
jdk12將隻有一個ARM 64位實(shí)現(aarch64)。 目標(biāo)是刪(shān)除(chú)所有與arm64實現相關的代碼,同(tóng)時保留32位(wèi)ARM端(duān)口和64位aarch64實現。
這(zhè)將(jiāng)把重點轉移到單個64位ARM實現,並消(xiāo)除維護兩個實現所需的重複(fù)工作。 當(dāng)前(qián)的JDK 11實現中有兩個64位ARM實現。
5、Switch 表達式
使用Java 12,switch不僅可以作為語句也可以作為表達式。 無論作為語句或者作為表達式,switch都可以使用傳統/簡化的作用域和控製流(liú)行為。 這將有助於簡化代碼,並為在switch中使用模(mó)式(shì)匹配鋪平道路。
Java開發人員(yuán)正在增強(qiáng)Java編程(chéng)語言,以使(shǐ)用(yòng)模式匹(pǐ)配來解決當(dāng)前switch語句的(de)幾個問(wèn)題。 這包括:switch塊的默認控製流行為,switch塊默認作(zuò)用域(被視為單(dān)個作(zuò)用域的塊)和(hé)switch僅作為語句。
在Java 11中,switch語句追(zhuī)隨C和C++,默認情(qíng)況下使用(yòng)fall-through語義。 雖然傳統(tǒng)的控製流程(chéng)在編(biān)寫低級(jí)代碼(mǎ)時很有用,但(dàn)隨著switch在更高級別的環境(jìng)中采用,易(yì)出錯會蓋過其靈活性。
6、默認(rèn)CDS歸檔(dàng)
通過在64位平台上(shàng)的默認(rèn)類列表(biǎo)的幫助(zhù)下生成CDS歸(guī)檔(dàng)來改(gǎi)進JDK構建(jiàn)過程,從而有(yǒu)效地(dì)消除了(le)運行java -Xshare:dump。 此(cǐ)功能的目標包括(kuò):1。)改(gǎi)進開箱(xiāng)即(jí)用(yòng)的啟動時間,以及(jí)2.)擺脫使用-Xshare:dump。
7、Shenandoah GC
Shenandoah是一種垃圾收集(GC)算法,旨在保證低延遲(10 - 500 ms的下限(xiàn))。 它通(tōng)過在運行(háng)Java工作線(xiàn)程(chéng)的同(tóng)時(shí)執行GC操(cāo)作減(jiǎn)少GC暫停時間(jiān)。 使用Shenandoah,暫停時間不依賴於堆的大小。 這意味著(zhe)無論堆的大小如(rú)何,暫(zàn)停時間都(dōu)是差(chà)不多的。
這是一(yī)個實驗(yàn)性功能,不(bú)包含在默認(oracle)的OpenJDK版本中。
8、JMH 基準測試(shì)
jdk12為(wéi)JDK源代碼(mǎ)添加了一(yī)套微基準測試(大約100個),簡(jiǎn)化了現(xiàn)有微基準測試(shì)的運行和新基準測試的(de)創建過程(chéng)。 它基於Java Microbenchmark Harness(JMH)並支(zhī)持JMH更新。
此功能(néng)使開發人員可以輕鬆運行當前的微(wēi)基(jī)準測試(shì)並(bìng)為JDK源代碼添(tiān)加新(xīn)的微基準測試。 可以(yǐ)基於(yú)Java Microbenchmark Harness(JMH)輕鬆測試JDK性能。 它將(jiāng)支(zhī)持JMH更新,並在(zài)套件中包含一組(約100個(gè))基(jī)準測試。
在預覽階段添(tiān)加文本塊。文本塊(kuài)是一個多行字符串文字,可以避免大多數轉義序列的需要。文(wén)本塊以可(kě)預測的方(fāng)式自(zì)動格式化字符串,並(bìng)使開發人(rén)員(yuán)可以控製格式。該項目列舉了為Java添(tiān)加文本塊背後的一些目標。一個目標(biāo)是通(tōng)過使表(biǎo)達跨越幾行源代碼的字符(fú)串(chuàn)變得容易,同時避免常見情況下的轉義序列來簡化(huà)Java程(chéng)序(xù)的編寫。
JDK 13提出了第二個switch表達式預覽。在(zài)JDK 12中有(yǒu)一個(gè),但(dàn)是(shì)要進行一個更改:要從switch表達式中生(shēng)成一個值break,要刪除(chú)with value語句以支(zhī)持a yield聲明(míng)。目的是擴展,switch以便它(tā)可以用作語句(jù)或表達式,因此(cǐ)兩個(gè)表單既可以使用case ... :帶有連貫符號的傳統標(biāo)簽(qiān),也可(kě)以使用新case … ->標簽,而不需要(yào)通過(guò),還(hái)有一個新的語句用於從switch表達式中產生(shēng)值。這(zhè)些更改將簡化編碼並為模式匹配做好準備。
增強ZGC(Z垃圾(jī)收集器)以將未使(shǐ)用的(de)內(nèi)存返回到操作係統(tǒng),引用的(de)提議被集成到JDK 13中.ZGC被稱為可擴(kuò)展的低延(yán)遲收集器(qì),目前不會將未使用(yòng)的內存返回到(dào)操作(zuò)係統即使長時間沒(méi)有使用(yòng)內存。對於某(mǒu)些(xiē)應用程序和環境而言(yán),此行為並非最佳,尤其是那(nà)些(xiē)需(xū)要關注內(nèi)存占用(yòng)的應用程(chéng)序(xù)和環境,例如應(yīng)用程序可能長時間處(chù)於空閑狀態(tài)並與其他應用程序共享或競爭資(zī)源(yuán)的容器或環境。
擴展(zhǎn)應用程(chéng)序類 - 數據共享(AppCDS),以便(biàn)在應用程(chéng)序執行結束時動態存檔類。存檔類將包括默認(rèn)的基(jī)礎(chǔ)層CDS存檔中不(bú)存在的所有已(yǐ)加載的應用程序和庫類。該提(tí)案處於目標(biāo)階段,旨在提(tí)高AppCDS的可(kě)用性,並消除(chú)用戶(hù)進行試(shì)運行(háng)以創建每個應用程序的(de)類列表(biǎo)的(de)需要。
第三個(gè)目標是通過(guò)規(guī)定任何(hé)新構造可以表達與字符串文(wén)字(zì)相同的(de)字符串集,解釋相同(tóng)的(de)轉義序列(liè),並像字(zì)符(fú)串文字一樣進(jìn)行(háng)操作來支持字符串文字的遷移。原始(shǐ)字符串文字是JDK 13提(tí)出的一(yī)個特性,但有利於文(wén)本塊,它(tā)采(cǎi)用了不同的方法來表示字符串而不轉義換行符(fú)和引號。原始字符串(chuàn)文字專注於(yú)字符串(chuàn)的(de)原(yuán)始性,但Java項目團隊現在認(rèn)為焦點(diǎn)是錯誤的,因為雖然原始字(zì)符(fú)串文字可能(néng)跨(kuà)越多行(háng)源代碼,但(dàn)它們涉及支持未轉義分隔符的昂貴要求。已經為JDK 13預測了(le)原始字符串文字,但從未正式添加到其建議的功能列表(biǎo)中。
重新(xīn)實現(xiàn)傳統套接字API,這將涉及使用更簡單,更現(xiàn)代的(de)實現替換API net.Socket和java.net.ServerSocketAPI 使用(yòng)的底層實現,易於(yú)調試和(hé)維(wéi)護。新的實現旨(zhǐ)在易於適應使用用(yòng)戶模式線程(也稱為光纖(xiān)),這些線(xiàn)程正在project Loom中進(jìn)行探索。上(shàng)述(shù)傳統API可(kě)以追溯到(dào)JDK 1.0,並且包含傳統C和Java代(dài)碼的混(hún)合,這(zhè)些代碼被描述為調試和維護的痛苦(kǔ)。遺留(liú)實現還(hái)存在其(qí)他問題(tí):支持異步關閉,導致可靠性和移植問題的(de)本(běn)機數據結構,以及(jí)需要徹(chè)底檢查的並發問題。
請(qǐng)描述您所遇到的錯誤,我們將(jiāng)盡快予以修正,謝(xiè)謝!
*必填項,請輸入(rù)內容