1.2 現(xiàn)代Java新特性:從Java 8到Java 13
作為一門很受歡迎的編程語(yǔ)言,Java語(yǔ)言在經(jīng)歷了20多年的發(fā)展后,已然成為開發(fā)者首選的“利器”。之所以能保持在編程界不斷受到開發(fā)者的熱捧,一個(gè)非常重要的原因就是Java自身不斷在進(jìn)化,不管是從其他語(yǔ)言中汲取經(jīng)驗(yàn),還是從實(shí)際應(yīng)用中挖掘新的需求,Java不斷增強(qiáng)的新特性,簡(jiǎn)化致力于應(yīng)用的開發(fā),讓應(yīng)用運(yùn)行更快、更穩(wěn)定。
接下來(lái),讓我們一起看一下從Java 8以來(lái)各個(gè)版本發(fā)布的新特性。
1.2.1 Java 8新特性
Java 8包含了如下新特性:
· Lambdas表達(dá)式與Functional接口
· 接口的默認(rèn)與靜態(tài)方法
· 新增方法的調(diào)用方式
· 優(yōu)化了HashMap以及ConcurrentHashMap
· 方法引用
· 重復(fù)注解
· 更好的類型推測(cè)機(jī)制
· 擴(kuò)展注解的支持
· Optional類
· Stream API
· Date/Time API(JSR 310)
· 并行(parallel)數(shù)組
· 并發(fā)(Concurrency)改進(jìn)
· 新增Nashorn
1.2.2 Java 9新特性
Java 9包含了如下新特性:
· 模塊化系統(tǒng)
· Linking
· JShell
· 改進(jìn)的Javadoc
· 集合工廠方法
· 改進(jìn)的Stream API
· 私有接口方法
· HTTP/2
· 多版本兼容JAR
1.2.3 Java 10新特性
Java 10包含了如下新特性:
· 局部變量類型推斷
· GC改進(jìn)和內(nèi)存管理
· 線程本地握手
· 備用內(nèi)存設(shè)備上的堆分配
· 支持Unicode
· 基于Java的實(shí)驗(yàn)性JIT編譯器
· 根證書
· 根證書頒發(fā)認(rèn)證
· 刪除javah工具
1.2.4 Java 11新特性
Java 11包含了如下新特性:
· 字符串加強(qiáng)
· 集合加強(qiáng)
· Stream加強(qiáng)
· HTTP Client API
· 運(yùn)行源代碼
· 支持Unicode 10
· 新增JShell
· 新增ZGC垃圾處理器
· 新增Epsilon垃圾處理器
1.2.5 Java 12新特性
Java 12包含了如下新特性:
· 短停頓時(shí)間的GC——Shenandoah
· 微基準(zhǔn)測(cè)試套件
· Switch表達(dá)式增強(qiáng)
· 緊湊數(shù)字格式
· JVM常量API
· 保留一個(gè)AArch64實(shí)現(xiàn)
· 默認(rèn)類數(shù)據(jù)共享歸檔文件
· 可中止的G1 Mixed GC
· G1及時(shí)返回未使用的已分配內(nèi)存
1.2.6 Java 13新特性
Java 13包含了如下新特性:
· 動(dòng)態(tài)類數(shù)據(jù)共享歸檔
· 增強(qiáng)ZGC以將未使用的堆內(nèi)存返回給操作系統(tǒng)
· Socket API的重新實(shí)現(xiàn)
· Switch表達(dá)式增強(qiáng)
· 文本塊
上面列出的只是部分特性,后續(xù)章節(jié)還將繼續(xù)探討這些特性的完整使用方式。
- Reactive Programming with Swift
- Learning Firefox OS Application Development
- PhoneGap Mobile Application Development Cookbook
- Python機(jī)器學(xué)習(xí)經(jīng)典實(shí)例
- Learning DHTMLX Suite UI
- 軟件測(cè)試技術(shù)指南
- 速學(xué)Python:程序設(shè)計(jì)從入門到進(jìn)階
- Java Fundamentals
- 打開Go語(yǔ)言之門:入門、實(shí)戰(zhàn)與進(jìn)階
- Apache Camel Developer's Cookbook
- MySQL 8從零開始學(xué)(視頻教學(xué)版)
- Android智能手機(jī)APP界面設(shè)計(jì)實(shí)戰(zhàn)教程
- MATLAB 2020 GUI程序設(shè)計(jì)從入門到精通
- Java服務(wù)端研發(fā)知識(shí)圖譜
- H5頁(yè)面設(shè)計(jì)與制作(全彩慕課版·第2版)