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

Java 10的10個新特性總結(jié)

 更新時間:2018年08月19日 11:40:57   作者:天高任鳥飛-海闊憑魚躍  
這篇文章我們給大家整理了關(guān)于Java 10的10個新特性以及相關(guān)要點內(nèi)容,有興趣的朋友們可以參考下。

Java 9才發(fā)布幾個月,很多玩意都沒整明白,現(xiàn)在Java 10又要來了。

這時候我真想說:線上用的JDK 7,甚至JDK 6,而JDK 8 還沒用熟,JDK 9 才發(fā)布不久不知道啥玩意,JDK 10……

剛學(xué)Java的同學(xué)是不是感覺一臉蒙逼?

就連我這個老司機(jī)也同樣感覺如此!

Java 更新越來越快,我們做技術(shù)的也要跟上步伐,不然總會慢別人一拍,這新東西從國外到國內(nèi)應(yīng)用一般要好幾年的時間,如果我們提前了解并應(yīng)用這些新技術(shù)對自己不是壞事。

Java 10的新特性

說了這么多,看Java 10都會有哪些特性來改變我們寫代碼的方式呢?!

1. 局部變量類型推斷

局部變量類型推斷可以說是Java 10中最值得注意的特性,這是Java語言開發(fā)人員為了簡化Java應(yīng)用程序的編寫而采取的又一步,如下圖所示。

這個新功能將為Java增加一些語法糖 - 簡化它并改善開發(fā)者體驗。新的語法將減少與編寫Java相關(guān)的冗長度,同時保持對靜態(tài)類型安全性的承諾。

局部變量類型推斷將引入"var"關(guān)鍵字,也就是你可以隨意定義變量而不必指定變量的類型,如:

將被下面這個新語法所取代:

看完是不是有點JS的即視感???越來越像JS了嗎?!雖然類型推斷在Java中不是一個新概念,但在局部變量中確是很大的一個改進(jìn)。

說到類型推斷,從JDK 5引進(jìn)泛型,到JDK 7的"<>"操作符允許不綁定類型而初始化List,再到JDK 8的Lambda表達(dá)式,再到現(xiàn)在JDK 10的局部變量類型推斷,Java類型推斷正大刀闊斧的向前發(fā)展。

局部變量類型推薦僅限于如下使用場景:

局部變量初始化for循環(huán)內(nèi)部索引變量傳統(tǒng)的for循環(huán)聲明變量Java官方表示,它不能用于以下幾個地方:

方法參數(shù)構(gòu)造函數(shù)參數(shù)方法返回類型字段捕獲表達(dá)式(或任何其他類型的變量聲明)

2. GC改進(jìn)和內(nèi)存管理

JDK 10中有2個JEP專門用于改進(jìn)當(dāng)前的垃圾收集元素。

第一個垃圾收集器接口是(JEP 304),它將引入一個純凈的垃圾收集器接口,以幫助改進(jìn)不同垃圾收集器的源代碼隔離。

預(yù)定用于Java 10的第二個JEP是針對G1的并行完全GC(JEP 307),其重點在于通過完全GC并行來改善G1最壞情況的等待時間。G1是Java 9中的默認(rèn)GC,并且此JEP的目標(biāo)是使G1平行。

3. 線程本地握手(JEP 312)

JDK 10將引入一種在線程上執(zhí)行回調(diào)的新方法,因此這將會很方便能停止單個線程而不是停止全部線程或者一個都不停。

4. 備用內(nèi)存設(shè)備上的堆分配(JEP 316)

允許HotSpot VM在備用內(nèi)存設(shè)備上分配Java對象堆內(nèi)存,該內(nèi)存設(shè)備將由用戶指定。

5. 其他Unicode語言 - 標(biāo)記擴(kuò)展(JEP 314)

目標(biāo)是增強(qiáng)java.util.Locale及其相關(guān)的API,以便實現(xiàn)語言標(biāo)記語法的其他Unicode擴(kuò)展(BCP 47)。

6. 基于Java的實驗性JIT編譯器

Oracle希望將其Java JIT編譯器Graal用作Linux / x64平臺上的實驗性JIT編譯器。

7. 根證書(JEP 319)

這個的目標(biāo)是在Oracle的Java SE中開源根證書。

8. 根證書頒發(fā)認(rèn)證

這將使OpenJDK對開發(fā)人員更具吸引力,它還旨在減少OpenJDK和Oracle JDK構(gòu)建之間的差異。

9. 將JDK生態(tài)整合單個存儲庫(JEP 296)

此JEP的主要目標(biāo)是執(zhí)行一些內(nèi)存管理,并將JDK生態(tài)的眾多存儲庫組合到一個存儲庫中。

10. 刪除工具javah(JEP 313)

從JDK中移除了javah工具,這個很簡單并且很重要。

Java 10嘗鮮

就像所有其他JDK版本一樣,Oracle已經(jīng)發(fā)布了一個Java 10初始候選版本,Java開發(fā)者可以下載此版本用來測試新功能。如果你對Java 10抱有期待想提早嘗試,那么現(xiàn)在就開始吧!

嘗鮮地址:http://openjdk.java.net/projects/jdk/10/

最后的一點想法

對于第一點新特性來說確實是一個大的跨越,其他特性或多或少都能帶給開發(fā)者福音。但最終Java 10會是什么樣,或許還會增加更多實用性的新功能或者優(yōu)化,我們還得期待!

現(xiàn)在要做的就是,趕緊熟悉JDK 8,現(xiàn)在已經(jīng)是很多互聯(lián)網(wǎng)企業(yè)標(biāo)配了。如果還在使用JDK4-7,那真的是要OUT了。。

在不久的將來,Java 10將徹底改變你寫代碼的方式!

相關(guān)文章

  • Java transient關(guān)鍵字與序列化操作實例詳解

    Java transient關(guān)鍵字與序列化操作實例詳解

    這篇文章主要介紹了Java transient關(guān)鍵字與序列化操作,結(jié)合實例形式詳細(xì)分析了java序列化操作相關(guān)實現(xiàn)方法與操作注意事項,需要的朋友可以參考下
    2019-09-09
  • java高并發(fā)的volatile與Java內(nèi)存模型詳解

    java高并發(fā)的volatile與Java內(nèi)存模型詳解

    這篇文章主要介紹了java高并發(fā)的volatile與Java內(nèi)存模型,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2021-10-10
  • java保證對象在內(nèi)存中唯一性的實現(xiàn)方法

    java保證對象在內(nèi)存中唯一性的實現(xiàn)方法

    這篇文章主要介紹了java如何保證對象在內(nèi)存中的唯一性,如果創(chuàng)建多個對象的話,可能會引發(fā)出各種各樣的問題,這時,就需要我們保證這個對象在內(nèi)存中的唯一性,需要的朋友可以參考下
    2019-06-06
  • Java如何根據(jù)不同系統(tǒng)動態(tài)獲取換行符和盤分割符

    Java如何根據(jù)不同系統(tǒng)動態(tài)獲取換行符和盤分割符

    這篇文章主要介紹了Java如何根據(jù)不同系統(tǒng)動態(tài)獲取換行符和盤分割符,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-12-12
  • Springboot+Redis執(zhí)行l(wèi)ua腳本的項目實踐

    Springboot+Redis執(zhí)行l(wèi)ua腳本的項目實踐

    本文主要介紹了Springboot+Redis執(zhí)行l(wèi)ua腳本的項目實踐,詳細(xì)的介紹Redis與Lua腳本的結(jié)合應(yīng)用,具有一定的參考價值,感興趣的可以了解一下
    2023-09-09
  • MyBatisPlus中使用or()和and()遇到的問題及細(xì)節(jié)處理

    MyBatisPlus中使用or()和and()遇到的問題及細(xì)節(jié)處理

    這篇文章主要介紹了MyBatisPlus中使用or()和and()遇到的問題,本文通過多種寫法實例代碼相結(jié)合給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-08-08
  • 一文詳解Java中的注解(Annotation)

    一文詳解Java中的注解(Annotation)

    在Java中注解(Annotation)引入始于Java5,用來描述Java代碼的元信息,通常情況下注解不會直接影響代碼的執(zhí)行,盡管有些注解可以用來做到影響代碼執(zhí)行,這篇文章主要給大家介紹了關(guān)于Java中注解(Annotation)的相關(guān)資料,需要的朋友可以參考下
    2024-03-03
  • java application maven項目打自定義zip包實例(推薦)

    java application maven項目打自定義zip包實例(推薦)

    下面小編就為大家?guī)硪黄猨ava application maven項目打自定義zip包實例(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-05-05
  • Intellij Idea中進(jìn)行Mybatis逆向工程的實現(xiàn)

    Intellij Idea中進(jìn)行Mybatis逆向工程的實現(xiàn)

    這篇文章主要介紹了Intellij Idea中進(jìn)行Mybatis逆向工程的實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Java反射機(jī)制的學(xué)習(xí)總結(jié)

    Java反射機(jī)制的學(xué)習(xí)總結(jié)

    總的來說,java反射機(jī)制是一個很好用的東西,用它可以解決很多死的東西,因為反射機(jī)制的靈活行很大,有了他,我們就不要花太多的時間來寫操做數(shù)據(jù)庫的代碼了,而是方法更多的時間在項目的邏輯功能上,這個可以很大的減少開發(fā)時間,而且代碼的可讀性好
    2013-09-09

最新評論