本教程针对 JDK 8 编写。本页中描述的示例和实践不利用后续版本中引入的改进,并且可能使用不再可用的技术。
请参阅 Java 语言更改,了解 Java SE 9 及后续版本中更新的语言特性的摘要。
请参阅 JDK 发行说明,了解所有 JDK 发行版本的新功能、增强功能和已删除或已弃用选项的信息。
Java技术既是一种编程语言,也是一个平台。
Java编程语言是一种高级语言,可以用以下所有流行词来描述:
|
|
这些词语的解释可以在由James Gosling和Henry McGilton撰写的白皮书《Java语言环境》中找到。
在Java编程语言中,所有源代码首先以以.java
扩展名结尾的纯文本文件形式编写。然后,这些源文件通过javac
编译器编译成.class
文件。一个.class
文件不包含与处理器原生相关的代码,而是包含了Java虚拟机的机器语言1 —— 字节码。然后,java
启动器工具会使用Java虚拟机的实例运行你的应用程序。
软件开发过程的概述。
由于Java虚拟机在许多不同的操作系统上可用,同样的.class
文件可以在Microsoft Windows、Solaris™操作系统(Solaris OS)、Linux或Mac OS上运行。一些虚拟机,如Java SE HotSpot at a Glance,在运行时执行额外的步骤,以提高应用程序的性能。这包括诸如查找性能瓶颈和重新编译(到本机代码)频繁使用的代码部分等任务。
通过Java虚拟机,同一应用程序可以在多个平台上运行。
平台是程序运行的硬件或软件环境。我们已经提到过一些最流行的平台,如Microsoft Windows、Linux、Solaris OS和Mac OS。大多数平台可以描述为操作系统和底层硬件的组合。Java平台与大多数其他平台不同之处在于,它是一个只运行在其他基于硬件的平台之上的软件平台。
Java平台由两个组件组成:
你已经了解了Java虚拟机;它是Java平台的基础,可以在各种基于硬件的平台上移植。
API是一个大型的现成软件组件集合,提供了许多有用的功能。它被分组为相关类和接口的库;这些库被称为包。下一节,Java技术能做什么?突出了API提供的一些功能。
API和Java虚拟机将程序与底层硬件隔离。
作为一个平台无关的环境,Java平台可能比本机代码慢一些。然而,编译器和虚拟机技术的进步正在将性能接近本机代码,而不威胁可移植性。