购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

1.1 Java简介

本书以纯面向对象的Java语言作为数据结构的描述语言,因此掌握Java语言程序设计的基本概念和基本方法是学习本课程的基础。为帮助读者学习,本节概述与数据结构课程教学内容相关的一些Java语言基础知识。

1.1.1 Java语言

Java语言是一种高级语言,它具有以下性质:面向对象、多线程、与体系结构无关、可解释以及可移植。大多数语言要么用于编译程序,要么用于解释程序,这些程序经翻译后才能在计算机上运行。Java语言的特殊之处在于用Java语言编写的程序既能被编译又能被解释。首先,使用编译器将程序翻译为一种被称为Java字节码的中间代码,这是由Java平台上的解释器解释的与平台无关的代码。然后,解释器在计算机上分析并运行每条Java字节码。编译只发生一次,而解释在每次执行程序时都发生。

Java字节码可被看作用于Java虚拟机的机器码指令。每个Java解释器,无论是开发工具还是可以运行Applet的Web浏览器,都由一种Java虚拟机实现。

Java字节码有助于使“一次编写,处处运行”成为可能。用户可以在任何有Java编译器的平台上将程序编译为Java字节码。Java字节码可以在任何Java虚拟机上运行。这意味着只要计算机上有一个Java虚拟机,那么用Java语言编写的同样的程序就能够在Windows、Solaris或macOS上运行。

1.1.2 Java虚拟机

JVM(Java Virtual Machine)就是人们常说的Java虚拟机,它是整个Java实现跨平台的最核心的部分,所有的Java程序(.java文件)会首先被编译为扩展名为.class的类文件,这种类文件可以在虚拟机上执行,即它并不直接与计算机的操作系统相对应,而是经过虚拟机间接与操作系统交互,由虚拟机将程序解释给操作系统执行。JVM是Java平台的基础,和实际的计算机一样,它也有自己的指令集,并且在运行时操作不同的主存储器(简称内存)区域。JVM通过抽象操作系统和CPU,提供一种与平台无关的代码执行方法,即与特殊的实现方法、主机硬件、主机操作系统无关的方法。但是在某些方面,在不同操作系统中可能有不同的JVM实现(例如垃圾回收算法、线程调度算法)。

JVM的主要工作是解释自己的指令集到CPU的指令集或系统调用,保护用户免被恶意程序骚扰。JVM对上层的Java源文件是不关心的,它关注的只是由源文件生成的类文件。类文件的组成包括JVM指令集、符号表以及一些辅助信息。 AL9dyBhNYDaeXDcQ+txR5TVdtk1h1QXMVX7dLrA0LYVKIk7ayCKQUh94nQ707+Zu

点击中间区域
呼出菜单
上一章
目录
下一章
×