JDK 1.5(也称为Java 5)的新特性包括:
1. 泛型:引入了泛型,使得可以在编译时检查和强制类型安全的容器对象。
2. 自动装箱和拆箱:自动将基本类型的值和对应的包装类对象进行相互转换。
3. 增强for循环:简化了对数组和集合的遍历。
4. 可变参数:允许方法接受可变数量的参数。
5. 注解:提供了一种在代码中添加元数据的方式,可以用于编译时检查和运行时处理。
6. 枚举类型:引入了枚举类型,提供了更好的类型安全性和可读性。
7. 静态导入:允许在代码中直接使用静态成员,而不需要使用类名来限定。
JDK 1.6(也称为Java 6)的新特性包括:
1. 脚本语言支持:支持在Java代码中嵌入和执行脚本语言,如JavaScript、Groovy等。
2. 编译器改进:引入了编译器优化和性能改进。
3. 插入式注解处理API:提供了一种机制来处理注解,生成额外的Java代码。
4. 并发改进:引入了一些新的并发类和工具,如ConcurrentHashMap和Phaser。
5. Web服务增强:提供了对SOAP 1.2和WSDL 1.1的支持。
JDK 1.7(也称为Java 7)的新特性包括:
1. 二进制字面量和下划线:允许使用二进制字面量和下划线来增强数字和字符串的可读性。
2. 异常多捕获:允许在一个catch块中捕获多个异常类型。
3. try-with-resources:简化了资源管理,可以在try语句中自动关闭实现了AutoCloseable接口的资源。
4. 新的IO/NIO API:提供了更高效和可扩展的IO和NIO API。
5. 动态语言支持:引入了对动态语言的支持,如使用invokedynamic指令来提高动态语言的性能。
6. 并发改进:引入了一些新的并发类和工具,如Fork/Join框架和Phaser的改进版本。
7. 钻石操作符:通过省略泛型类型的参数来简化代码。
8. 数字字面量增强:允许在数字字面量中使用下划线来提高可读性。
9. G1垃圾回收器:引入了一种新的垃圾回收器,用于改进大内存和高并发应用的性能。
请注意,这只是一些主要的新特性,每个版本还包含了其他的改进和修复。