JDK1.5新特性:
J2SE,J2EE,J2ME 更名为: JavaSE,JavaEE,JavaME自动拆装箱
泛型
可变参数
静态导入
增强for循环
互斥锁
java内置线程池。
线程池中可以提交 Callable接口的子类对象。
枚举
JDK1.7新特性:
二进制字面量数字字面量可以出现下划线
switch 语句可以用字符串
泛型简化,菱形泛型
异常的多个catch合并,每个异常用或|
try-with-resources 语句(就是我们将的JDK1.7的流的标准异常处理代码)
//AutoCloseable 接口
JDK1.8新特性:
A:接口中可以定义有方法体的方法,如果是非静态,必须用default修饰,如果是静态的可不加。B:局部内部类在访问他所在方法中的局部变量,该变量可以不用加final,系统会默认加上。
局部内部类在访问他所在方法中的局部变量必须用final修饰,为什么?
因为当调用这个方法时,局部变量如果没有用final修饰,他的生命周期和方法的生命周期是一样的,当方法弹栈,这个局部变量也会消失,那么如果局部内部类对象还没有马上消失想用这个局部变量,就没有了,如果用final修饰会在类加载的时候进入常量池,即使方法弹栈,常量池的常量还在,也可以继续使用。