Java程序设计大学教程 的好的编程语言。但是,实际上有上百种好的编程语言从来没有获得广泛的流行,而一些有 明显缺点的语言,比如C++和Ⅴ isual basic却大行其道 这是为什么呢?这是因为编程语言的成功更多来自于该语言以外的支持。例如:是否有 操作系统厂商的支持?有帮助功能强大、方便好用的标准库?有工具厂商生产好的编程和调 试环境吗?该语言及其相关工具能否和计算机的其他基础结构整合在一起? Java的成功就来自于各方面得天独厚的支持,但者并不意味着Java是万能的语言。Java 还有一些自身的弱点,比如Java依赖虚拟机解释执行,因此它对于某些实时处理或CPU敏 感的任务而言就显得运算太慢。 1.3.3 下载JDK搭建Java平台 1.Java平台 Java平台由Java应用编程接口(API)和Java虚拟机(JVM)构成,如图1-6所示, 这个平台构成了Java在不同计算机系统中编译和运行的环境 Java程序 Java APis Java平台 (安装JDK) Java虚拟机 计算机系统 图1-6Java平台与计算机系统 Java应用编程接口是已编译的可在任何Java程序中使用的代码库(即Java类库)。它们 作为可定制的现成功能可以随时添加到我们自己的Java程序中,以节约编程时间,避免重 复劳动。 Java程序必须由由Java虚拟机来运行。也就是说,Java程序并不是在本机操作系统上 直接运行,而是由JVM向本机操作系统解释执行。所以,没有安装JVM的计算机系统是无 法运行Java程序的。 2.下载JDK 为了搭建Java平台,需要下载和安装Java软件开发工具箱( Java Development Kit,DK), 并设置Java编译和运行环境 JDK包含了所有编写、运行Java程序所需要的工具:Java基本组件、库、Java编译器 Java解释器、 Java applet浏览器,以及一些用于开发Java应用程序的程序等。其核心 JavaAPI
Java 程序设计大学教程 14 的好的编程语言。但是,实际上有上百种好的编程语言从来没有获得广泛的流行,而一些有 明显缺点的语言,比如 C++和 Visual Basic 却大行其道。 这是为什么呢?这是因为编程语言的成功更多来自于该语言以外的支持。例如:是否有 操作系统厂商的支持?有帮助功能强大、方便好用的标准库?有工具厂商生产好的编程和调 试环境吗?该语言及其相关工具能否和计算机的其他基础结构整合在一起? Java 的成功就来自于各方面得天独厚的支持,但者并不意味着 Java 是万能的语言。Java 还有一些自身的弱点,比如 Java 依赖虚拟机解释执行,因此它对于某些实时处理或 CPU 敏 感的任务而言就显得运算太慢。 1.3.3 下载 JDK 搭建 Java 平台 1. Java 平台 Java 平台由 Java 应用编程接口(API)和 Java 虚拟机(JVM)构成,如图 1-6 所示。 这个平台构成了 Java 在不同计算机系统中编译和运行的环境。 图 1-6 Java 平台与计算机系统 Java 应用编程接口是已编译的可在任何 Java 程序中使用的代码库(即 Java 类库)。它们 作为可定制的现成功能可以随时添加到我们自己的 Java 程序中,以节约编程时间,避免重 复劳动。 Java 程序必须由由 Java 虚拟机来运行。也就是说,Java 程序并不是在本机操作系统上 直接运行,而是由 JVM 向本机操作系统解释执行。所以,没有安装 JVM 的计算机系统是无 法运行 Java 程序的。 2. 下载 JDK 为了搭建 Java 平台,需要下载和安装 Java 软件开发工具箱(Java Development Kit,JDK), 并设置 Java 编译和运行环境。 JDK 包含了所有编写、运行 Java 程序所需要的工具:Java 基本组件、库、Java 编译器、 Java 解释器、Java applet 浏览器,以及一些用于开发 Java 应用程序的程序等。其核心 JavaAPI Java 程序 Java 虚拟机 Java APIs 计算机系统 Java 平台 (安装 JDK)
Java程序设计大学教程 是一些预定义的类库,开发人员需要用这些类来访问Java语言的功能。 JavaAP包括一些重 要的语言结构以及基本图形、网络和文件O。作为JDK实用程序,工具库中有7种主要程 序 Javac Java编译器,将Java源代码转换成字节码。 · Java Java解释器,直接从类文件执行Java应用程序字节代码。 · Appletviewer小程序浏览器,一种执行HIML文件上的Java小程序的Java浏览 Javadoc根据Java源码及说明语句生成HTML文档。 Jdb Java调试器,可以逐行执行程序,设置断点和检查变量。 Javan产生可以调用Java过程的C过程,或建立能被Java程序调用的C过程的 头文件。 · Javap Java反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代 码的含义。 Sun公司为 Solaris、 Linux和 Windows提供了Java2标准版(J2SE)最新、最完全的版 本。本书使用的JDK是J2 SE Development Kit 5.0 Update2(即JDK1.50_02),读者可以到 以下官方网站免费下载 http://java.suncom/32se/downloads/index.html 在这个网站,读者还可以阅读到JDK在不同平台上的安装指南。JDK在 Windows中的 安装界面如图1-7所示。 3325E Development Kit 5.0 Update I-Custom Setup Custom setup ◆Sn Select the program features you want installed Select optional features to install from the list below. You can change your choice of features after installation by using the Add Remove Programs utility in the Control Panel Feature Description 2-Development Tools J2SE Development Kit 5.0 cluding private JRE 5.0. This 0- Source Code I require 264 MB on your hard Public jRI Insta‖!to D: Program Files)Java\jdk, 5.0_011 Change Installshield Cancel 图1-7在 Windows中JDK的安装界面 安装完JDK后,我们可以查看到如图1-8所示的文件目录结构。在进行Java开发时, 本书写作时的Java2标准版JDK最新版本是1.5.00 15
Java 程序设计大学教程 15 是一些预定义的类库,开发人员需要用这些类来访问 Java 语言的功能。JavaAPI 包括一些重 要的语言结构以及基本图形、网络和文件 I/O。作为 JDK 实用程序,工具库中有 7 种主要程 序: • Javac Java 编译器,将 Java 源代码转换成字节码。 • Java Java 解释器,直接从类文件执行 Java 应用程序字节代码。 • Appletviewer 小程序浏览器,一种执行 HTML 文件上的 Java 小程序的 Java 浏览 器。 • Javadoc 根据 Java 源码及说明语句生成 HTML 文档。 • Jdb Java 调试器,可以逐行执行程序,设置断点和检查变量。 • Javah 产生可以调用 Java 过程的 C 过程,或建立能被 Java 程序调用的 C 过程的 头文件。 • Javap Java 反汇编器,显示编译类文件中的可访问功能和数据,同时显示字节代 码的含义。 Sun 公司为 Solaris、Linux 和 Windows 提供了 Java 2 标准版(J2SE)最新、最完全的版 本1 。本书使用的 JDK 是 J2SE Development Kit 5.0 Update2(即 JDK1.5.0_02),读者可以到 以下官方网站免费下载: http://Java.sun.com/j2se/downloads/index.html 在这个网站,读者还可以阅读到 JDK 在不同平台上的安装指南。JDK 在 Windows 中的 安装界面如图 1-7 所示。 图 1-7 在 Windows 中 JDK 的安装界面 安装完 JDK 后,我们可以查看到如图 1-8 所示的文件目录结构。在进行 Java 开发时, 1 本书写作时的 Java 2 标准版 JDK 最新版本是 1.5.0_02
Java程序设计大学教程 我们可能偶尔会察看一下这些被安装的文件,寻找我们需要的资源。注意,根据所安装的 JDK版本不同,该目录结构可能会有一些变化 alava jdk1.5.00 编泽器及一些工具 o bin (这里以可执行文件为主) +0 demo ± include 演示程序 用于本地方法的文件 +0 sample Java运行时环境文件 库文件 t 0 sun 些示例程序 库源文件的各个子目录 ±白org (通过src,zip解压缩生成) sunw 图1-8JDK的安装后的目录结构 JDK发布的库源文件压缩在srcp中,如果要看源代码,必须首先解压该文件。src目 录包含了Java库公开部分的源代码。当对Java熟悉到一定程度的时候,会发现要想知道更 多的 Java API内容就得去深入研究Java的源代码了。例如,如果对 System类的内部工作机 制感到好奇,就可以到 src/java/lang/ System. java源代码中看个究竟,了解那些库函数到底是 如何工作的。 3.设置路径 安装完JDK后,我们还需要进一步设置路径,即把 jdk/bin目录加入到执行路径中,该 路径是操作系统寻找本地Java运行坏境的目录列表。在不同的操作系统上,该步骤也各不 相同。 在 Windows95/98/ME中,需要在 AUTOEXEC BAT文件末尾添加以下一行代码,并重 启操作系统: SET PATH=c: \jdk \bin; PATH8 在 Windows nt/2000XP中,打开控制面板,选择系统,环境变量,在用户变量窗口中 找到PATH变量,然后在路径的开头添加 jdklbin目录,使用分号把新加的条目和以前的分 开,如下所示 c:jdk\bin;(其它条目) 保存设置。并通过下面的步骤测试路径设置是否正确 启动一个shel,窗口,具体方法取决于你的操作系统。输入下面一行命令: Java -version 16
Java 程序设计大学教程 16 我们可能偶尔会察看一下这些被安装的文件,寻找我们需要的资源。注意,根据所安装的 JDK 版本不同,该目录结构可能会有一些变化。 图 1-8 JDK 的安装后的目录结构 JDK 发布的库源文件压缩在 src.zip 中,如果要看源代码,必须首先解压该文件。src 目 录包含了 Java 库公开部分的源代码。当对 Java 熟悉到一定程度的时候,会发现要想知道更 多的 Java API 内容就得去深入研究 Java 的源代码了。例如,如果对 System 类的内部工作机 制感到好奇,就可以到 src/java/lang/System.java 源代码中看个究竟,了解那些库函数到底是 如何工作的。 3. 设置路径 安装完 JDK 后,我们还需要进一步设置路径,即把 jdk/bin 目录加入到执行路径中,该 路径是操作系统寻找本地 Java 运行坏境的目录列表。在不同的操作系统上,该步骤也各不 相同。 在 Windows 95/98/ME 中,需要在 AUTOEXEC.BAT 文件末尾添加以下一行代码,并重 启操作系统: SET PATH=c:\jdk\bin;%PATH% 在 Windows NT/2000/XP 中,打开控制面板,选择系统,环境变量,在用户变量窗口中 找到 PATH 变量,然后在路径的开头添加 jdk\bin 目录,使用分号把新加的条目和以前的分 开,如下所示: C:\jdk\bin;(其它条目) 保存设置。并通过下面的步骤测试路径设置是否正确: 启动一个 shell 窗口,具体方法取决于你的操作系统。输入下面一行命令: java -version 编泽器及一些工具 (这里以可执行文件为主) 演示程序 一些示例程序 用于本地方法的文件 库文件 库源文件的各个子目录 (通过 src.zip 解压缩生成) Java 运行时环境文件
Java程序设计大学教程 然后按回车键,应该能够看到如下输出,如图1-9所示 Java version XXX〃 Java(TM) 2 Runtime Environment, Standard Edition (builder xXx) Java Hot Spot(TM)Client VM(builder xxx) 国N命令提示符 sion 1.5.5 01 ava(Tm> 2 Runt ime Environment. Standard Edition (build 1.5.6 51-b08> ava HotSpot<TM) Client UM (build 1.5.0_01-b08, mixed mode, sharing) 图1-9测试Java版本,检查路径设置是否正确 如果得到的输出的是诸如 Java: command not found Bad command or filename Error: could not find java. dll Error: could not find Java 2 Runtime Environment 之类的信息,就需要返回去检查安装过程是否有问题了。 Java程序的编写、编译和运行 对于简单的Java程序,我们可以通过任何文本编辑器来编写代码,然后用命令行工具 进行编译和运行。但是这样使用JDK比较麻烦。我们还可以考虑使用集成了JDK的文本编 辑器来编写、编译和运行简单的Java程序,比如 TextPad、JEdt或是别的一些工具。 对于大型项目开发,我们可以使用功能强大的集成开发环境(IDE),比如免费的 Eclipse 或是其他商业产品,如: J Builder e 下面,我们以一个最简的Java程序 Hello world来说明Java程序是如何编写、编译和运 行的 1.4.1 使用命令行工具 打开 Windows的记事本,新建一个文本文件。编写如示例程序1-2所示的Java程序代 码。并将这段代码保存为名为C: MyJava/ Hello World. java的文件。 示例程序1-2最简单的Java程序 Helloworld // The First Java Program 3: public class HelloWorld t public static void main (String [ args)I 17
Java 程序设计大学教程 17 然后按回车键,应该能够看到如下输出,如图 1-9 所示: Java version “XXX” Java(TM) 2 Runtime Environment,Standard Edition (builder XXX) Java HotSpot(TM) Client VM·(builder XXX) 图 1-9 测试 Java 版本,检查路径设置是否正确 如果得到的输出的是诸如: Java: command not found Bad command or filename Error: could not find java.dll Error: could not find Java 2 Runtime Environment. 之类的信息,就需要返回去检查安装过程是否有问题了。 1.4 Java 程序的编写、编译和运行 对于简单的 Java 程序,我们可以通过任何文本编辑器来编写代码,然后用命令行工具 进行编译和运行。但是这样使用 JDK 比较麻烦。我们还可以考虑使用集成了 JDK 的文本编 辑器来编写、编译和运行简单的 Java 程序,比如 TextPad、JEdit 或是别的一些工具。 对于大型项目开发,我们可以使用功能强大的集成开发环境(IDE),比如免费的 Eclipse; 或是其他商业产品,如:JBuilder。 下面,我们以一个最简的 Java 程序 HelloWorld 来说明 Java 程序是如何编写、编译和运 行的。 1.4.1 使用命令行工具 打开 Windows 的记事本,新建一个文本文件。编写如示例程序 1-2 所示的 Java 程序代 码。并将这段代码保存为名为 C:/MyJava/HelloWorld.java 的文件。 示例程序 1-2 最简单的 Java 程序 HelloWorld 1: // The First Java Program 2: 3: public class HelloWorld { 4: public static void main(String[] args){
Java程序设计大学教程 System. out. println("Hello World! " 567 有两种方法可以编译和执行Java程序:使用命令行或者其他集成了JDK的程序及IDE 我们首先使用最基本的命令行方法 如果是 Windows2000XP,通过选择菜单:开始→所有程序->附件->命令提示符,打开 一个命令提示符窗口。如果是 Windows98/ME,则打开一个 MS-DOS窗口。 然后进入 C: /MyJava目录,输入如下命令 javac HelloWorld. java java HelloWorld 屏幕上应该出现如图1-10所示的信息。此时表明我们已经成功编译和运行了第一个简 单的Java程序! 通过我们刚才的操作,我们可以看到 Javac程序作为Java的编译器把 Hello World. java 文件编译成 Hello World class文件。 Javac程序作为Java解释器,则负责解释执行编译器生成 到 class文件中的字节码。 Hello world程序非常简单。它只是在命令提示符窗口(通常称为控制台)上输出一条问 候世界的消息“ Hello World!"。这是所有程序设计语言用来第一次试写程序的惯例。这段程 序代码的工作机制我们将在后续章节中讲述。 驱动器c中的卷是sys2 c: MyJava的目录 这是我们保存的源代码文件 95-84-1521:15<DIR C: /My Java/Hello World. java g95-4 2005-64-1528:32 152 He lloWorld. java 录3,287798,592可用字节 编译 Hello World程序 NlyJaua>javac HelloWorld. java NyJava>java HelloWorld 运行 Hello world程序 le llo World I jAva>dir 驱动器c中的卷是S2805 卷的序列号是852D-12F 这是编译后得到的字节码文 c:、 MyJava的目录 件: Hello world class 5-4-1521:15<DIR EEs-四4-1521:15<DIR> g5-84-1528:32 152 HelloWorld. java g5-4-1521:26 28 He lloWorld. class 2个音葉 3.287.782488 字节 图1-10使用命令行工具编译和运行Java程序
Java 程序设计大学教程 18 5: System.out.println("Hello World!"); 6: } 7: } 有两种方法可以编译和执行 Java 程序:使用命令行或者其他集成了 JDK 的程序及 IDE。 我们首先使用最基本的命令行方法。 如果是 Windows 2000/XP,通过选择菜单:开始->所有程序->附件->命令提示符,打开 一个命令提示符窗口。如果是 Windows 98/ME,则打开一个 MS-DOS 窗口。 然后进入 C:/MyJava 目录,输入如下命令: javac HelloWorld.java java HelloWorld 屏幕上应该出现如图 1-10 所示的信息。此时表明我们已经成功编译和运行了第一个简 单的 Java 程序! 通过我们刚才的操作,我们可以看到 javac 程序作为 Java 的编译器把 HelloWorld.java 文件编译成 HelloWorld.class 文件。javac 程序作为 Java 解释器,则负责解释执行编译器生成 到 class 文件中的字节码。 HelloWorld 程序非常简单。它只是在命令提示符窗口(通常称为控制台)上输出一条问 候世界的消息“Hello World!”。这是所有程序设计语言用来第一次试写程序的惯例。这段程 序代码的工作机制我们将在后续章节中讲述。 图 1-10 使用命令行工具编译和运行 Java 程序 这是我们保存的源代码文件 C:/MyJava/HelloWorld.java 编译 HelloWorld 程序 运行 HelloWorld 程序 这是编译后得到的字节码文 件: HelloWorld.class