1.2 Java 的版本
Java 主要分为两个版本:Java SE 和Java EE。
Java SE 是Java 的标准版,主要用于桌面应用程序的开发,它包含了Java 语言基础、JDBC(Java 数据库连接)、I/O(输入/ 输出)、多线程等技术。
Java EE 是Java 的企业版,主要用于服务器应用程序的开发,如网站、服务器接口等,其核心为EJB(企业Java 组件)。Java EE 版本兼容Java SE 版本。
以Java SE 为例,各版本的特点如下:
●JDK1.0 ~JDK1.4 已不能满足开发需求而被广大开发者放弃。
●JDK1.5 添加了自动装箱、自动拆箱、枚举、不定长参数、泛型等功能。
●JDK1.6 在JDK1.5 的基础上添加了许多新的类,但核心语法没有发生变化。
●JDK7 也可以称为JDK1.7,该版本的switch 语句可以使用字符串参数,简化了泛型语法,添加了try 语句自动关闭流资源等功能。
●JDK8 添加了Lambda 表达式、JavaFX 技术、流式处理和JavaScript 脚本引擎等功能。
●JDK9 在JDK8 的基础上添加了许多新的类,优化了线程并发处理和垃圾回收处理的代码,并开启了模块化Java API 的先河。然而,JDK9 刚推出半年就被JDK10 替代了。
●JDK10 添加了var 关键字,同时进一步优化了JDK9 的代码,并删除了冗余的过时代码。
在JDK7 升级到JDK8 的过程中,Oracle 公司放弃了原本的1.X 版本号名称,直接使用版本号的第二位数字,所以很多资料中仍会记载JDK1.7 而不是JDK7,其实这两个名称是同一个版本的不同叫法。即使是JDK8 版本,使用java-version 命令查询出的结果仍然是1.8.XX。版本名称不统一的问题直到JDK9 才得以解决,JDK9 彻底删除了1.X 前缀。
以上介绍的是Oracle 公司推出的JDK,除此之外,还有一个Open JDK。Open JDK最早由SUN 公司推出,它是一个完全开源且商业免费的Java 平台,被广泛应用到Linux系统中。因为Oracle JDK 的源码有知识产权的问题,所以Open JDK 的源码和Oracle JDK的源码并不是完全一样的。
Open JDK 有如下几个特点:
●所有代码都是开源代码。在Open JDK 中有知识产权的代码都被替换掉了,不存在知识产权纠纷,所以完全免费。
●虽然它的所有代码都是开源代码,但其功能并不完整,只包含了JDK 中最精简的功能。
●不包含Oracle JDK 的Deployment(部署)功能。
●不能使用Java 的商标。
●性能不如Oracle JDK 高。
不同版本的JDK 之间可能存在不兼容问题。当技术人员开发服务器应用程序时,需要提前知道服务器的JDK 版本,并按照对应版本的要求编写Java 代码。