JDK重要版本更新功能

  • JDK1.2
  1. 基础体系拆分:J2SE(面向桌面应用程序开发)、J2EE(面向企业级应用开发程序开发)、J2ME(面向手机等移动终端开发)
  2. 引入集合(Collection)框架;
  3. 对字符串常量做内存映射;
  4. 引入 JIT(Just In Time) 编译器;
  5. 引入对打包的 Java 文件进行数字签名;
  6. 引入控制授权访问系统资源的策略工具;
  7. 引入 JFC(Java Foundation Classes),包括 Swing 1.0、拖放和 Java 2D 类库;
  8. 引入 Java 插件;
  9. 在 JDBC 中引入可滚动结果集、BLOB、CLOB、批量更新和用户自定义类型;
  10. 在 Applet 中添加声音支持。
  • JDK1.5
  1. 引入泛型(Generics)--为集合(collections)提供编译时类型安全,无需每刻从Collections取得一个对象就进行强制转换(cast)
  2. 增强的“for”循环(Enhanced For loop)--减少迭代器(iterator)的潜在错误(error-proneness)
  3. 自动置入/自动取出(Autoboxing/unboxing)--无需在基本类型(primitive types)(例如double)和包装类型(wrapper types)(例如Double)之间人工地进行转换。
  4. 类型安全的枚举(Typesafeenums)--提供类型安全枚举模式的各项好处。
  5. 静态导入(Static import)--无需在使用其他类的静态成员变量前缀其类名.这将使得代码更为简洁。
  6. 元数据(Metadata)--使编程人员避免编写样板化代码(boiler plate code),并提供机会进行宣告式程式设计(declarative programming)。

 

  • JDK1.7
  1. switch语句支持字符串变量
  2. 泛型实例化类型自动推断
  3. 新的整数字面表达方式 - "0b"前缀和"_"连数符
  4. 在单个catch代码块中捕获多个异常,以及用升级版的类型检查重新抛出异常
  5.  

 

  • JDK1.8
  1. Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可。
  2. 新增lambda表达式
  3. 提供函数式接口
  4. Java 8 允许你使用关键字来传递方法或者构造函数引用
  5. 我们可以直接在lambda表达式中访问外层的局部变量。

 

JDK安装注意事项

  • JRE安装目录要和JDK平行且在同一个文件夹下
  • 设置path路径时,为防止误操作,导致原路径被删除或修改。在增加新的java路径前,先把远路径全部保存,做个备份。