JDK8~JDK11的新特性

#JDK 1.8 新特性
接口中的靜態方法 只能由接口本身調用java

接口中的默認方法 能夠不被覆蓋sql

 


#JDK 1.9 新特性(可能在JDK8中被忽略了,沒來得及加)
接口能夠定義私有方法,可是隻能讓本身調用,實現類不能調用api

<>學名 鑽石操做符
在定義匿名內部類時,這個鑽石操做符能夠使用類型推斷
Comparator<Object> com = new Comparator<>(){...};nosql

JDK 1.7中加了一個類型推斷,因此有以下寫法
ArrayList<String> list = new ArrayList<>;ide


java8中,能夠實現資源的自動關閉,可是要求執行後必須關閉的全部資源必須在try子句中初始化,不然編譯不經過。編碼

java9的話,只要把要關閉的資源變量放在try的小括號中便可,可是在不能更改這個資源變量的值;idea


motivation 動機接口

String 不用 char[] 來存儲,改爲了byte[] 加上 編碼標記,節約了一些空間ip


java9新特性 用集合工廠方法去建立只讀集合
Collections.unmodifiableList(list);資源


標識接口,這種接口裏面啥代碼也沒有,只起一個標識的做用


能夠用of方法來建立只讀集合
List.of(1,2,3,4,5);


Inputstream 能夠使用 transferTo 直接將數據傳輸到OutputStream


在使用nosql時 stream api就很是實用了


Stream.of();
of參數不能存儲單個null,不然會報錯

因而jdk9中加了一個ofNullable(),只能放一個值


... 學名 可變形參


alt + / 快捷鍵自動補全

Nashorn 是一個Javascript引擎

 

2014 java8
2017.9 java9
2018.3 java10
2018.9 java11 LTS版
2019.3 java12


idea 18年的第三個版本

LTS是長期支持(Long Term Support)的縮寫
長期支持穩定版

太多的類型聲明只會分散注意力,不會帶來額外的好處


# Java 10 的新特性

局部變量的類型推斷
用var代替了,聲明變量時,根據所附的值,推斷變量的類型


copyOf()建立一個只讀的集合


java11 提供了 兩種新的GC Epsilon 和 ZGC(這一個GC是具備劃時代意義的)

# java11
String 的.isBlank()、strip()方法

java11中廢棄掉Nashorn引擎

experimental 實驗的

stw(stop the world)

java flight recorder java飛行器

新的貨幣APIcurrency

相關文章
相關標籤/搜索