JDK5.0的新特性
1. 自动装箱、拆箱
2. 静态导入(static import)
3. 增强for循环(for-each)
4. 可变参数
5. 枚举(enmu)
6. 泛型
7. 元数据
JDK6.0的新特性
1. AWT中新增两个类:Desktop和SystemTray
2. 使用JAXB2来实现对象与XML之间的映射
3. 新增处理DOM和SAX之外又一种处理XML文档的API:STAX
4. 使用Compiler API动态编译java源文件
5. 轻量级Http Server API
6. 插入式注解处理API(用于处理Annotations)
7. 用Console开发控制台程序
8. 对ruby、groovy、javascript等脚本语言的支持
9. Common Annotations
JDK7.0的新特性
1. 对Java集合(Collections)的增强支持
2. 在switch中可用String
3. 数值可加下划线(eg:int one_million=123_1)
4. 支持二进制文字(int binary=0b1001_1001)
5. 简化可变参数方法的调用
6. 自动资源管理
JDK8.0的新特性
1. Stream函数式操作流元素集合
2. Lambda表达式
3. Java Date/time API
4. 新增接口:默认方法与静态方法
5. Nashorm(Rhino的接替者,轻量级高性能的javascript运行环境)
6. Accumlators多线程lock
7. 方法引用,与Lambda表达式联合使用
8. 引入重复注解
9. 类型注解
10. 新增base64加解密API
11. 数组并行(parallel)操作
12. JVM的permGen空间移除,被Metaspace元空间取代