Java 技术既是一种编程语言又是一种平台。
Java 编程语言
Java 编程语言是一种高级语言,它能够通过下列词汇而被表现:
- 简单
- 面向对象
- 分布式
- 多线程
- 动态
- 架构中立
- 可移植
- 高性能
- 健壮
- 安全
上述的每个词汇都在 Java Language Environment 被说明,该白皮书由 James Gosling 和 Henry McGilton 所编写。
在 Java 编程语言中,所有源代码都需要编写在纯文本文件中,并且以 .java 作为扩展名。然后由 javac 编译器把这些源文件被编译进一个 .class 文件。一个 .class 文件并不包含任何与本地处理器相关的代码;而是字节码,即 Java Virtual Machine(Java VM)的机器语言。然后 Java 运载器工具就会以 Java Virtual Machine 的一个实例来运行你的应用程序。
软件开发过程的概览。
因为 Java VM 可以在许多不同的操作系统中使用,所以相同的 .class 文件可以同时运行在 Microsoft Windows、Solaris TM Operating System(Solaris OS)、Linux,或者 Mac OS 等操作系统中。有些虚拟机(比如 Java HotSpot 虚拟机)还会在运行时完成额外的步骤为你的应用程序提高性能。这包括许多任务,比如寻找性能瓶颈并且把代码中频繁被使用的部分重新编译成本地代码。
通过 Java VM,相同的应用程序就能够运行在多种平台中。
Java 平台
平台是指程序运行的硬件环境或者软件环境。前面我们已经提及了流行的平台,比如 Microsoft Windows、Linux,Solaris OS 和 Mac OS 等等。多数平台能够被描述成操作系统和底层硬件的结合体。Java 平台与多数其他平台的不同之处就是它只是一种软件平台,运行在基于硬件的平台顶层。
Java 平台有两个组件:
- Java Virtual Machine
- Java Application Programming Interface(API)
现在你已经了解了 Java Virtual Machine;它是 Java 平台的基础,也承载于多种基于硬件的平台之上。
API 是现成的软件组件的超级集合,能够提供许多有用的功能。它被组合在相关的类库和接口库中;通常这些库被称为包。在下个部分:[Java 技术可以做什么?]将重点讨论由 API 所提供的一些功能。
API 和 Java Virtual Machine 把程序从底层硬件中隔离。
作为一种平台独立的环境,Java 平台要比本地代码稍慢。但是,高级编译器和虚拟机技术所带来的性能几乎接近于没有移植风险的本地代码。
提示:术语[Java Virtual Machine]和[JVM]都是表示 Java 平台的 Virtual Machine。