java-learning/demo2/README.md
2025-08-15 17:48:25 +08:00

39 lines
1.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

java各个版本的特性
---
### **Java 8 (2014) - LTS**
- **Lambda表达式**:简化函数式编程[1][3]
- **Stream API**:支持函数式数据流处理[1]
- **接口默认方法与静态方法**:允许接口包含实现[1]
- **新的日期时间APIjava.time**替代旧的Date/Calendar类[1]
- **Optional类**减少NullPointerException风险[1]
### **Java 9 (2017)**
- **模块化系统Jigsaw**:引入模块化编程[2]
- **JShell**交互式REPL工具[2]
### **Java 10 (2018)**
- **局部变量类型推断var**:简化局部变量声明[2]
### **Java 11 (2018) - LTS**
- **HTTP Client API**标准化HTTP客户端[2]
- **单文件源码直接运行**:无需编译即可执行`.java`文件[2]
### **Java 12-17非LTS版本**
- **Switch表达式增强**Java 12/13/14逐步完善 Java 14正式[2]
- **文本块Text Blocks**简化多行字符串Java 13预览Java 15正式[2]
- **Records**简化不可变数据类Java 14预览Java 16正式[2]
- **Sealed Classes**限制类继承Java 15预览Java 17正式[2]
### **Java 18-21**
- **模式匹配增强**instanceof、switch模式匹配[2]
- **虚拟线程(预览)**轻量级并发模型Java 19预览Java 21正式[2]
### **Java 22-24部分特性为预览或实验性**
- **分代Shenandoah垃圾收集器**Java 24[4]
- **紧凑对象标头**优化内存使用Java 24[4]
- **限制JNI使用**提升安全性Java 24[4]
- **G1垃圾收集器扩展**Java 24[4]