亚洲精品久久久久久久久久久,亚洲国产精品一区二区制服,亚洲精品午夜精品,国产成人精品综合在线观看,最近2019中文字幕一页二页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

Java 12重磅發(fā)布,新特性解讀

5RJg_mcuworld ? 來源:YXQ ? 2019-03-21 17:28 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

Java 9 之前,當(dāng)一個版本被宣布為首選版本,存在一個“培育”(bedded-in)新 GA 版本的重疊期。在此期間,上一個版本將會繼續(xù)進(jìn)行免費(fèi)更新。為確保新舊版本間的干凈切換,即便舊版本已不再是首選版本,通常也會繼續(xù)維護(hù) 12 個月以上。但是隨著 Java 版本發(fā)布更改為遵循嚴(yán)格的時(shí)間表后,事實(shí)上宣告了傳統(tǒng)的免費(fèi)支持期將壽終正寢。

Oracle 對 Java 8 的官方支持時(shí)間持續(xù)到 2020 年 12 月,之后將不再為個人桌面用戶提供 Oracle JDK 8 的修復(fù)更新;在 2019 年 1 月之后,不再提供免費(fèi)的商業(yè)版本更新,屆時(shí)想要繼續(xù)獲得 Oracle 的商業(yè)支持和維護(hù),需付費(fèi)訂閱。

Java 是很多程序員的飯碗,Java 生態(tài)圈下的程序員們似乎對于 Oracle 也有諸多不滿,當(dāng) Java 也像 Android 系統(tǒng)走上版本號的穩(wěn)定道路后,新版本的發(fā)布意義還有那么大嗎?Java 12 已經(jīng)發(fā)布了,但使用版本最多的還是 Java 8,你會選擇升級嗎?

JDK12 如期而至,不知不覺 Java 半年為周期的發(fā)布模式(Half-year-cadence)已經(jīng)成功運(yùn)行了一年多,OpenJDK 社區(qū)和 Oracle 充分展示了其堅(jiān)決的執(zhí)行力。今天當(dāng)然要嘗鮮 JDK12 的新特性,與此同時(shí),筆者也會從不同角度,來分析新發(fā)布模式是否達(dá)到了其初衷。

下載地址:

https://www.oracle.com/technetwork/java/javase/downloads/index.html

JDK 12 新特性一覽:

189:Shenandoah: A Low-Pause-Time Garbage Collector (Experimental)

http://openjdk.java.net/jeps/189

230:Microbenchmark Suite

http://openjdk.java.net/jeps/230

325:Switch Expressions (Preview)

http://openjdk.java.net/jeps/325

334:JVM Constants API

http://openjdk.java.net/jeps/334

340:One AArch64 Port, Not Two

http://openjdk.java.net/jeps/340

341:Default CDS Archives

http://openjdk.java.net/jeps/341

344:Abortable Mixed Collections for G1

http://openjdk.java.net/jeps/344

346:Promptly Return Unused Committed Memory from G1

http://openjdk.java.net/jeps/346

首先值得關(guān)注的是 Switch Expressions,這是一個為開發(fā)者準(zhǔn)備的特性,我們可以利用具體代碼快速了解一下,下面是傳統(tǒng) statement 形式的 switch 語法:


switch(day) {caseMONDAY:caseFRIDAY:caseSUNDAY:System.out.println(6);break;caseTUESDAY:System.out.println(7);break;caseTHURSDAY:caseSATURDAY:System.out.println(8);break;caseWEDNESDAY:System.out.println(9);break;}

如果有編碼經(jīng)驗(yàn),你一定知道,switch 語句如果漏寫了一個 break,那么邏輯往往就跑偏了,這種方式既繁瑣,又容易出錯。如果換成 switch 表達(dá)式,Pattern Matching 機(jī)制能夠自然地保證只有單一路徑會被執(zhí)行,請看下面的代碼示例:


switch(day) {caseMONDAY, FRIDAY, SUNDAY -> System.out.println(6);caseTUESDAY -> System.out.println(7);caseTHURSDAY, SATURDAY -> System.out.println(8);caseWEDNESDAY -> System.out.println(9);}

更進(jìn)一步,下面的表達(dá)式,為我們提供了優(yōu)雅地表達(dá)特定場合計(jì)算邏輯的方式


intnumLetters =switch(day) {caseMONDAY, FRIDAY, SUNDAY ->6;caseTUESDAY ->7;caseTHURSDAY, SATURDAY ->8;caseWEDNESDAY ->9;};

Switch Expressions 或者說起相關(guān)的 Pattern Matching 特性,為我們提供了勾勒出了 Java 語法進(jìn)化的一個趨勢,將開發(fā)者從復(fù)雜繁瑣的低層次抽象中逐漸解放出來,以更高層次更優(yōu)雅的抽象,既降低代碼量,又避免意外編程錯誤的出現(xiàn),進(jìn)而提高代碼質(zhì)量和開發(fā)效率。

第二,則是很有現(xiàn)實(shí)意義度 Shenandoah GC。它是 Redhat 主導(dǎo)開發(fā)的 Pauseless GC 實(shí)現(xiàn),從大概 2013 年開始研發(fā),終于取得了重要的階段性成果,與其他 Pauseless GC 類似,Shenandoah GC 主要目標(biāo)是 99.9% 的暫停小于 10ms,暫停與堆大小無關(guān)等。

也許了解 Shenandoah GC 的人比較少,業(yè)界聲音比較響亮的是 Oracle 在 JDK11 中開源出來的 ZGC,或者商業(yè)版本的 Azul C4(Continuously Concurrent Compacting Collector)。但是,筆者認(rèn)為,至少目前,其實(shí)際意義大于后兩者,因?yàn)椋?/p>

使用 ZGC 的最低門檻是升級到 JDK11,對很多團(tuán)隊(duì)來說,這種版本的跳躍并不是非常低成本的事情,更何況是尚不清楚 ZGC 在自身業(yè)務(wù)場景中的實(shí)際表現(xiàn)如何。

而 C4,畢竟是土豪們的選擇,現(xiàn)實(shí)情況是,有多少公司連個幾十塊錢的 License 都不舍得…

而 Shenandoah GC 可是有穩(wěn)定的 JDK8u 版本發(fā)布的哦,據(jù)我所知已經(jīng)有個別公司在 HBase 等高實(shí)時(shí)性產(chǎn)品中實(shí)踐許久。

從原理的角度,我們可以參考該項(xiàng)目官方的示意圖,其內(nèi)存結(jié)構(gòu)與 G1 非常相似,都是將內(nèi)存劃分為類似棋盤的 region。整體流程與 G1 也是比較相似的,最大的區(qū)別在于實(shí)現(xiàn)了并發(fā)的 Evacuation 環(huán)節(jié),引入的 Brooks Forwarding Pointer 技術(shù)使得 GC 在移動對象時(shí),對象引用仍然可以訪問。

下面是 jbb15 benchmark 中,Shenandoah GC 相對于其他主流 GC 的表現(xiàn),GC 暫停相比于 CMS 等選擇有數(shù)量級程度的提高,對于 GC 暫停非常敏感的場景,價(jià)值還是很明顯的,能夠在 SLA 層面有顯著提高。當(dāng)然,這種對于低延遲的保證,也是以消耗 CPU 等計(jì)算資源為代價(jià)的,實(shí)際吞吐量表現(xiàn)也不是非常明朗,需要看企業(yè)的實(shí)際場景需求,并不是一個一勞永逸的解決方案。

其他的一些特性,例如,G1 相關(guān)的兩個特性是對 G1 在特定場景不足的有效改進(jìn),但談不上是突破性的提高,不再一一列舉。

與 JDK11 這種長期支持版本(Long-Term-Support,LTS)相比,JDK12 似乎關(guān)注度有限,大家對于 JDK 這種頻繁的節(jié)奏也有點(diǎn)麻木了,那么

JDK12 這種非 LTS 版本,是否有什么生產(chǎn)環(huán)境價(jià)值?

Java 新的發(fā)布模式是否達(dá)到了其快速落地和迭代新特性的目的?

也許不會有太多公司直接選擇 JDK12,但個別的生產(chǎn)實(shí)踐并不遙遠(yuǎn)。比如,我所在部門在實(shí)踐場景中發(fā)現(xiàn),利用 JDK 12 的 Abortable Mixed Collections for G1,解決了 HDFS 在特定場景中 G1 Evacuation 時(shí)間過長的困擾,雖然最后團(tuán)隊(duì)選擇將其 backport 到了自己的 JDK11 版本中,但如果沒有快速交付的預(yù)覽版 JDK12,也不會如此快速的得到結(jié)論。

而對另一個問題,筆者認(rèn)為目前看是非常成功的,解開了 Java/JVM 演進(jìn)的許多枷鎖,至關(guān)重要的是,OpenJDK 的權(quán)力中心,正在轉(zhuǎn)移到開發(fā)社區(qū)和開發(fā)者手中。在新的模式中,既可以利用 LTS 滿足企業(yè)長期可靠支持的需求,也可以滿足各種開發(fā)者對于新特性迭代的訴求。你可能注意到了 Switch Expressions 被打上了預(yù)覽(Preview)的標(biāo)簽,Shenandoah GC 則是實(shí)驗(yàn)(Experimental)特性,這些都是以往的發(fā)布周期下不大現(xiàn)實(shí)的,因?yàn)橛?2-3 年的最小間隔粒度來實(shí)驗(yàn)一個特性,基本是不現(xiàn)實(shí)的。

可以預(yù)計(jì),JDK8 在未來的一段時(shí)間仍將是主流,我們已經(jīng)注意到 Amazon、Alibaba、Redhat、AdoptOpenJDK 等等廠商或社區(qū),紛紛發(fā)布了自己的 JDK8 等產(chǎn)品,開始競賽長期支持版本 JDK 的主導(dǎo)權(quán),筆者認(rèn)為這是非常好的跡象,反映了主流廠商對于 Java 的投資力度增大。

是否會帶來 Java/JVM 的碎片化呢?多少會發(fā)生一些,但從目前的合作模式來看,OpenJDK 仍然是合作的中心,主導(dǎo)這 Java 歷史版本維護(hù)和未來的演進(jìn)路線。

一些小鮮肉語言嘲笑 Java,實(shí)現(xiàn)類似功能,Java 代碼要多寫近一倍,程序要笨重一個數(shù)量級,有些也許是言過其實(shí),但語法的表達(dá)能力和 JVM 的龐大,確實(shí)逐漸成為 Java 發(fā)展的短板,JDK10~12 發(fā)布的不間斷成功,讓我們看到了 Java/JVM 大踏步前進(jìn)的曙光!

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • JAVA
    +關(guān)注

    關(guān)注

    20

    文章

    2995

    瀏覽量

    115404
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4932

    瀏覽量

    72855

原文標(biāo)題:Java 12正式發(fā)布,新特性解讀!

文章出處:【微信號:mcuworld,微信公眾號:嵌入式資訊精選】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    Java 25正式發(fā)布,重要特性詳解(附代碼示例):靈活構(gòu)造函數(shù)體、模塊導(dǎo)入聲明、AOT方法分析等

    Java 25現(xiàn)已發(fā)布,更多新特性來了!配合Perforce JRebel,代碼修改即時(shí)生效,無需重啟服務(wù),即可實(shí)現(xiàn)“改完就看效果”。新特性+快工具,讓你的
    的頭像 發(fā)表于 10-29 13:16 ?384次閱讀
    <b class='flag-5'>Java</b> 25正式<b class='flag-5'>發(fā)布</b>,重要<b class='flag-5'>特性</b>詳解(附代碼示例):靈活構(gòu)造函數(shù)體、模塊導(dǎo)入聲明、AOT方法分析等

    翼輝信息RealEvo-Stream 2.0.0重磅發(fā)布

    自推出以來,便以 “降低開發(fā)門檻、加速項(xiàng)目落地” 為核心目標(biāo)。如今 RealEvo-Stream 2.0.0 正式發(fā)布!
    的頭像 發(fā)表于 10-29 11:45 ?458次閱讀
    翼輝信息RealEvo-Stream 2.0.0<b class='flag-5'>重磅</b><b class='flag-5'>發(fā)布</b>

    上海海思助力長虹星閃電視2.0重磅發(fā)布

    好看、好用、更好玩,四川長虹聯(lián)合上海海思共同發(fā)布長虹星閃電視2.0,融合星閃、GPMI、菁彩視聽等創(chuàng)新技術(shù),實(shí)現(xiàn)了“體驗(yàn)”、“互聯(lián)”、“交互”的多維創(chuàng)新,旨在打造一款滿足全齡段家庭成員需求,更智慧
    的頭像 發(fā)表于 09-29 09:40 ?512次閱讀

    OpenTenBase 5.0和TXSQL 8.0.30重磅發(fā)布

    內(nèi)核,助力社區(qū)擁有了兼容PostgreSQL和MySQL的雙內(nèi)核引擎。如今,OpenTenBase和TXSQL雙雙迎來重磅升級。
    的頭像 發(fā)表于 09-18 10:12 ?421次閱讀

    聯(lián)想百應(yīng)智能體2.0重磅升級

    升級后的聯(lián)想百應(yīng)智能體2.0具備自主規(guī)劃、按需生成和閉環(huán)解決能力,實(shí)現(xiàn)了AI從“響應(yīng)式助手”到“協(xié)作級伙伴”的能力躍遷,重新定義了中小企業(yè)AI服務(wù)邊界。
    的頭像 發(fā)表于 08-29 15:41 ?569次閱讀

    開源鴻蒙共建地圖4.0重磅發(fā)布

    近日,在2025開放原子開源生態(tài)大會開源鴻蒙主題演講活動上,《開源鴻蒙共建地圖4.0》重磅發(fā)布,標(biāo)志著開源鴻蒙在技術(shù)體系、系統(tǒng)能力和生態(tài)共建方面邁入全新階段。活動現(xiàn)場,開放原子開源基金會秘書長助理兼
    的頭像 發(fā)表于 07-28 17:45 ?573次閱讀

    2025款東風(fēng)奕派eπ007重磅上市

    近日,東風(fēng)奕派重磅打造全球首場AI共創(chuàng)產(chǎn)品發(fā)布會,以前沿科技重構(gòu)汽車發(fā)布場景,解鎖前所未有的沉浸式交互體驗(yàn)。
    的頭像 發(fā)表于 05-23 15:58 ?621次閱讀

    RK3588參數(shù)與主要特性 RK3588數(shù)據(jù)手冊解讀

    RK3588參數(shù)與主要特性 RK3588數(shù)據(jù)手冊解讀
    的頭像 發(fā)表于 05-19 18:34 ?7586次閱讀
    RK3588參數(shù)與主要<b class='flag-5'>特性</b>  RK3588數(shù)據(jù)手冊<b class='flag-5'>解讀</b>

    WIZnet高性能以太網(wǎng)單片機(jī)W55MH32重磅發(fā)布!

    WIZnet高性能以太網(wǎng)單片機(jī)W55MH32重磅發(fā)布!本文詳細(xì)解析了W55MH32芯片的高性能網(wǎng)絡(luò)處理能力與硬件資源,以及兩款開發(fā)板(L/Q-EVB)。芯片憑借TOE引擎、豐富外設(shè)及加密單元,為物
    的頭像 發(fā)表于 05-07 16:17 ?1047次閱讀
    WIZnet高性能以太網(wǎng)單片機(jī)W55MH32<b class='flag-5'>重磅</b><b class='flag-5'>發(fā)布</b>!

    納雷科技發(fā)布新一代無人機(jī)高度計(jì)雷達(dá)UAM231

    納雷新一代無人機(jī)高度計(jì)雷達(dá)UAM231重磅發(fā)布,無人機(jī)雷達(dá)產(chǎn)品家族迎新成員。
    的頭像 發(fā)表于 01-17 09:09 ?1841次閱讀

    世強(qiáng)硬創(chuàng)榮獲利爾達(dá)“2024年度最佳成長合作伙伴”

    日前,世強(qiáng)硬創(chuàng)平臺榮獲利爾達(dá)科技集團(tuán)授予的“2024 年度最佳成長合作伙伴” 這一重磅殊榮。
    的頭像 發(fā)表于 01-15 14:43 ?805次閱讀

    重磅并購!家電巨頭收購“準(zhǔn)IPO”企業(yè)

    半導(dǎo)體行業(yè)又一重磅并購!康佳集團(tuán)發(fā)布公告并購芯片“小巨人”企業(yè),旨在整合供應(yīng)鏈、提升產(chǎn)品研發(fā)與創(chuàng)新能力。從這次收購動向,可以看出半導(dǎo)體行業(yè)哪些趨勢? 近日,業(yè)務(wù)覆蓋消費(fèi)電子、智能終端、半導(dǎo)體等多個
    的頭像 發(fā)表于 01-08 17:26 ?999次閱讀

    智能煥新年!TuyaOS 3.11.0重磅上線,功耗超低、通信距離猛增4倍以上

    作為降低智能解決方案開發(fā)門檻的TuyaOS操作系統(tǒng),在開年之際,迎來了重大更新!本次TuyaOS3.11.0版本發(fā)布了多款開發(fā)框架,覆蓋多種協(xié)議連接和平臺,而且各個開發(fā)框架都取得了大突破,功能更強(qiáng)
    的頭像 發(fā)表于 01-01 07:53 ?1115次閱讀
    智能煥新年!TuyaOS 3.11.0<b class='flag-5'>重磅</b>上線,功耗超低、通信距離猛增4倍以上

    比亞迪2025款騰勢D9重磅上市

    近日,“科技豪華全能旗艦MPV”——25款騰勢D9重磅上市,推出DM-i超級混動版和純電版共8個版本車型,官方指導(dǎo)價(jià)33.98萬元——46.98萬元。25款騰勢D9在“設(shè)計(jì)、舒適、駕馭、三電、智能、安全”6大維度全面升級,再立MPV王者標(biāo)桿!
    的頭像 發(fā)表于 12-29 15:13 ?2999次閱讀

    光庭信息超級軟件工場SDW 2.0重磅發(fā)布

    近日,光庭信息2024年投資者開放日活動隆重舉辦?;顒右浴癆I開發(fā) 再塑汽車變革”為主題,向廣大投資機(jī)構(gòu)及券商代表深度闡述了光庭信息未來一年的發(fā)展策略及事業(yè)規(guī)劃,重磅發(fā)布了光庭信息及超級軟件工場全新品牌形象,超級軟件工場 2.0 版本也正式亮相,充分展示了光庭信息在 AI
    的頭像 發(fā)表于 12-23 15:04 ?1166次閱讀