● Java语言发展简史
Java语言是一种可以编写跨平台应用软件且面向对象的程序设计语言,由Sun公司的詹姆斯?高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak。Java随着互联网技术的应用得到了快速发展,逐渐成为重要的网络编程语言。Java从第一个版本发布到现在已经有20年的时间了,也产生了无数和Java相关的产品、技术和标准。下图回顾了Java的发展轨迹和历史变迁。

图 2-1 Java发展时间线
1991年,在SUN公司工作期间,詹姆斯?高斯林和一群技术人员创建了一个名为Oak的项目,旨在开发运行于虚拟机的编程语言。随着互联网技术的发展,在1994年詹姆斯?高斯林等人决定将该技术应用于互联网,1995年将Okay更名为Java。
1996年,JDK 1.0发布,Java语言有了第一个正式版本的运行环境。JDK 1.0版本包括Java虚拟机、Applet、AWT等。
1998年,Java迎来了一个里程碑式的版本J2SE1.2,在这个版本中,Java技术体系拆分为3个方向,分别是面向桌面应用开发的J2SE(Java 2 Platform,Standard Edition)、面向企业级开发的J2EE(Java 2 Platform,Enterprise Edition)和面向手机等移动终端开发的J2ME(Java 2 Platform, Micro Edition)。
2006年,Sun公司宣布将Java代码开源,并在随后的一年多时间内,陆续将JDK的各个部分在GPL v2(GNU General Public License v2)协议下公开了源码,并建立了OpenJDK组织对这些源码进行独立管理。并且终结了从JDK 1.2开始已经有8年历史的J2EE、J2SE、J2ME的命名方式,启用Java SE 6、Java EE 6、Java ME 6的命名方式。
2009年Oracle公司收购了Sun公司,并于2011年发布了Java SE7,2014年发布了Java SE8。
2017年Oracle公司正式发布Java SE9。
● Java运行及开发环境
Java是编译兼解释性语言,Java的源代码首先被编译成字节代码,然后依赖各种不同平台上的虚拟机来解释执行字节码。Java语言的编译、解释、执行过程如下图所示:

图 2-2 Java语言编译、解释及执行过程
Java代码是文本文件,可以用记事本等文本编辑器直接编辑Java文件。代码编写完成后运行Java编译器,将Java源代码文件编译为class文件(字节码文件),JVM(Java虚拟机)的类装载器加载class文件,由解释器解释执行。
从图中可以看出,从编写Java代码到运行Java程序,需要使用Java编译器和JVM,其它部分都是我们熟知的程序,例如:可以用记事本编写Java源代码,操作系统平台可以选择熟知的XP、Win7或Win10、Linux等系统。
Java为开发者提供了JRE(Java运行环境)和JDK(Java开发工具包),分别对应上图的Java编译器和JVM(Java虚拟机)。JRE是运行Java程序所必需的软件环境,是提供给想运行java程序的用户使用的,不过开发者也需要运行编写的Java程序,所以JRE是开发者必须要安装的Java软件。JRE包括JVM和Java核心类库。
JDK(Java开发工具包)为Java开发者提供了开发环境,JDK包含了编译java源码的编译器javac,同时还包含了java程序调试和分析工具,以及编写java程序所需的文档和demo例子程序。JDK是Java开发者必备的开发工具。
JDK1.5及后续版本包含了运行Java程序所必须的JRE,Java开发者安装JDK后,就不再需要单独安装JRE了。
● 常用的Java开发工具
1.记事本
使用Windows自带的记事本编辑Java程序,在控制台编译、运行Java程序。缺点是不能设置格式,易读性不强。
2.UltraEdit
一个功能强大的文本编辑软件,用它编写Java程序代码时,可以自动对Java的关键词识别并着色,代码易读性强。
3.Eclipse
主流的Java集成开发环境,大多数Java项目一般都采用Eclipse开发,是开发Java首先的集成开发工具。
当前JDK最新版本是1.9(Java SE9,JDK版本号为1.9),开发者可以采用JDK1.8版本,没有必要追求最新版本。初学Java开发者,建议使用记事本或带简单集成开发调试环境的编辑器,更有利于专注Java语言本身,而不会陷入复杂的集成工具中,有一定基础后再使用集成开发工具。

1. 用那些工具可以编写Java代码?
2. 请简要叙述JRE和JDK的区别。
3. 请说出当前主流的Java集成开发环境。