1. 版本区别
1. JDK1.5版本变化:可变参数、condition锁、
JAVA支持传递同类型的可变参数给一个方法,一个方法只能指定一个位于参数末尾的可变参数;...在类型和参数名之间;以数组形式存在。
2. JDK1.7版本变化:字符串常量池、
字符串常量池从方法区移到堆中。
新增了多个catch的功能:先小后大
3. JDK1.8版本变化:
废弃永久代(Perm Gen)整个常量池从方法区移除,方法区使用元空间(Meta-Space)实现。
接口中的方法可以由static和default修饰。static修饰的方法由接口直接调用,默认修饰符的方法只能由接口的实现类调用,提供了可选功能。
抽象类的访问权限由Protected变为default。
4. JDK1.9版本变化:
接口的方法修饰符可以为private