Java语言JDK新版本中重要特性详细解析,包含从JDK 9 ~ 最新发布的 OpenJDK 版本 。
时间1~2天。
语法
- Records
- Sealed 密封类和接口
- var 语法
- Switch 表达式
- 加强的 instanceof
- 文本块
- Unnamed Variables & Patterns
- Stream Gatherers
并发、流和 NIO
- Flow API
- Sequenced Collections
- 虚拟线程 Virtual Threads
- HTTP/2 Client
- Simple Web Server
- Unix-Domain Socket Channels
GC
- G1 为默认GC
- ZGC
- GC 接口
- Epsilon: No-Op GC
- Shenandoah GC
JVM
- Elastic Metaspace
- Foreign Function & Memory API
- Class-File API
- Heap Allocation on Alternative Memory Devices
- Reimplement Core Reflection
- Microbenchmark Suite
- Compact Object Headers
编译
- AOT
- JVM 编译接口
模块化和 CDS
- Module System
- 模块化 Image
- JDK Internals 包装
- AppCDS
安全
- TLS 1.3
- PKCS12 Keystores
- 根证书
- SecureRandom
- 算法 SHA-3, ChaCha20和Poly1305, EdDSA
- Key Encapsulation Mechanism API
运行环境和打包工具
- Main 方法和启动源码文件
- jshell
- jlink
- 多版本 Jar
- Packaging Tool
日志监控和代码文档
- JFR
- Unified JVM/GC Logging
- Code Snippets
- UTF-8 by Default
- Markdown 文档
未来特性
- Vector API
移除的功能
- 移除 Java EE and CORBA Modules
- 移除 CMS GC
- 移除 Nashorn JavaScript Engine
- 移除 Security Manager
升级重点考虑因素
- JEE API升级,Migrate工具运用
- GC选择
- 流和并发库的应用