第 2 章 Java 运行环境搭建 2.1 Java 的运行系统 2.1 Java 的运行系统 2.2 JDK 的安装与配置2.2 JDK 的安装与配置 2.3 Java 开发工具包 2.4 Java 源文件编辑环境的选择 2.5 Application 和 Applet 程序的编写与运行
北邮网络研究中心-张海旸 2.1 Java 的运行系统 Java 运行系统 Java 运行系统一般由: 类装载器( Class Loader ) 字节码校验器( Byte code verifier ) 解释器 代码生成器和运行支持库等几个部分组成。 运行 Java 字节码的工作是由解释器来完成的。 解释执行过程分三步进行:代码的装入、代码 的校验和代码的执行。
北邮网络研究中心-张海旸 基本结构图
北邮网络研究中心-张海旸 Java 程序的编译和执行过程如图
北邮网络研究中心-张海旸 2.2 JDK 的安装与配制 JDK(Java Development kit) 是 SUN 公司提供 的一套 Java 开发环境, 它主要包括了一些常用的 JDK 工具、执行时需要的函数库、与 C 连接时所需 的文件及一些 Java 应用程序范例等。 JDK 的获取 JDK 可以从 SUN 公司的网站 或国内一些常用的资料下载网 站免费下载而得。
北邮网络研究中心-张海旸 JDK 的安装后说明 COPYRIGHT : JDK 版本说明; README.html : JDK 的 HTML 说明文档; README.txt : JDK 基本内容及功能说明; src.zip : JDK 程序源代码压缩文件; bin 目录:常用的 JDK 工具,包括 java,javac,appletviewer 等; lib 目录:包含了一些在执行 JDK 可执行文件时所要用到的类库; include 目录:包含了一些与 c 连接时所需的文件; demo 目录:包含了许多 Sun 公司提供的 Java 小应用程序范例。 Jre: 目录 : java 的运行时环境。
北邮网络研究中心-张海旸 安装 Java 帮助文档 1.JDK 的安装程序中并不包含帮助文档,因 此必须从 Sun 的网站上下载进行安装(是个 压缩包)。通常安装在 JDK 所在目录的 docs 子目录下面。( jdk-6u10-docs.zip , jar xvf jdk-6u10-docs.zip ) 2. 在浏览器中打开 docs 目录下的 index.html 文件就可查看帮助文档。
北邮网络研究中心-张海旸 环境变量的配置 环境变量的配置 java_home jdk 的安装路径,例如: c:\j2sdk1.4.2 classpath java 类文件的路径 一般配置如下: .;%java_home%\lib; %java_home%\lib\tools.jar;. path 命令的搜索路径 在原来的基础上增加: %java_home%\bin;%java_home%\jre\bin
北邮网络研究中心-张海旸 如何验证安装的正确性 在 MS-DOS 命令提示符下,输入: Java –version 出现 版本信息后,就为正确的安装。
北邮网络研究中心-张海旸 2.3 Java 开发工具包 Sun 公司为程序开发者提供了编译、测试、执 行程序等一套完备的工具体系,它们被集中存放 在主目录的 bin 目录下 。 Java 编译器( javac.exe ) 是用户用来将.java 文件编译成可以被 java 解释器 运行的类文件(.class )的工具。 命令格式为: javac [ 选项 ] 源文件名
北邮网络研究中心-张海旸 Java 解释器( java.exe ) java 解释器也称字节码解释器,它负责解释执 行 java 字节码文件,就是通常所说的 java 虚拟机 ( JVM )。 命令格式为: java [ 选项 ] 类名 [ 参数 ] Applet 浏览器( appletviewer.exe ) Appletviewer 展示 Web 页面中包含的 Applet , 通常用于 Applet 开发过程中的测试。 命令格式为: appletviewer [ 选项 ] URL
北邮网络研究中心-张海旸 调试器( jdb.exe ) 调试器 jdb 也可执行字节码,同时提供置断点 中断执行和显示迹量值等功能,是查找程序错误 的有效工具。 java 调试器 jdb 用于监督检测 java 程 序的执行。 分解器( javap.exe ) java 分解器 javap 将经编译生成的字节码分解, 给出指定类中成员变量和方法的有关信息 。 命令格式: javap [ 选项 ] 类名
北邮网络研究中心-张海旸 文档生成器( javadoc.exe ) 文档生成器 javadoc 接受源文件(后缀为.java ) 输入,然后自动生成一个 HTML 文件,内容包括 java 源文件中的类、变量、方法、接口、异常等。 c 语言头文件生成器( javah.exe ) c 语言头文件生成器 javah 用以从 java 字节码上 生成 c 语言头文件和源文件,这些文件用来在 java 的类中融入 c 语言的原生方法。 语法格式: javah [ 选项 ] 类名
北邮网络研究中心-张海旸 2.4 JAVA 源文件编辑环境的选择 较流行的代码编辑工具: Ultraedit TextPad Editplus Java 集成开发工具: Visual j++ Jbuilder Eclipse
北邮网络研究中心-张海旸 2.5 开始进入我们的 Java 世界 实现一个简单的 Java Application Java Application 的编写 编译 执行 Java Application 实现一个简单的 Java Applet Java Applet 的编写 编译 察看 Java Applets
北邮网络研究中心-张海旸 Application 程序的编写与运行 编写源程序 ( 例 HelloWorld.java) class HelloWorld { public static void main(String[] args){ System.out.println("Hello World!"); } 注:保存的时候文件名要和类名一致,包括大小写
北邮网络研究中心-张海旸 编译源程序 首先在命令提示符下,进入该文件的根目录 用 javac 命令编译源文件,如: javac HelloWorld.java 运行 Java 程序 执行 java 命令就可运行 Java 程序 ,如: java HelloWorld
北邮网络研究中心-张海旸 2.1 一个简单的 Java Application //This application program prints Welcome //to Java! public class Welcome { public static void main(String[] args) { System.out.println("Welcome to Java!"); } RunSource
北邮网络研究中心-张海旸 课件
北邮网络研究中心-张海旸 Applet 程序的编写与运行 编写源程序 ( 例 MyFirstApplet.java) import java.applet.*; import java.awt.*; public class MyFirstApplet extends Applet { public void paint(Graphics g) { g.drawString("Hello! java world!",2,20); }
北邮网络研究中心-张海旸 import java.applet.*; import java.awt.*; public class MyFirstApplet extends Applet { public void Init() { } // 在初始打开此网页时调用 public void start() { } // 当初始打开和回到此网页时调用 public void stop() { } // 当离开此网页时调用 public void destroy() { } // 当关闭整个浏览器时调用 }
北邮网络研究中心-张海旸 编译源程序 建立 MyFirstApplet.html ,将 MyFirstApplet.class 字节码文件放入其中。 MyFirstApplet program 浏览 MyFirstApplet.html MyFirstApplet.html
北邮网络研究中心-张海旸 补充: Java 程序规范 源文件的命名规则 如果在源程序中包含有公共类的定义,则该源 文件名必须与该公共类的名字完全一致,字母 的大小写都必须一样。这是 java 语言的一个严 格的规定,如果不遵守,在编译时就会出错。 因此,在一个 java 源程序中至多只能有一个公 共类的定义。 如果源程序中不包含公共类的定义,则该文件 名可以任意取名。 如果在一个源程序中有多个类定义,则在编译 时将为每个类生成一个.class 文件。
北邮网络研究中心-张海旸 Java 编程规范 软件开发是一个集体协作的过程,程序员之间 的代码是经常要进行交换阅读的,因此, java 源程序有一些约定成俗的命名规定,主要目的 是为了提高 java 程序的可读性。 包名:包名是全小写的名词,中间可以由点分 隔开,例如: java.awt.event; 类名:首字母大写,通常由多个单词合成一个 类名,要求每个单词的首字母也要大写,例如 class HelloWorldApp; 接口名:命名规则与类名相同,例如 interface Collection;
北邮网络研究中心-张海旸 方法名:往往由多个单词合成,第一个单词通 常为动词,首字母小写,中间的每个单词的首 字母都要大写,例如: balanceAccount , isButtonPressed; 变量名:全小写,一般为名词,例如: length; 常量名:基本数据类型的常量名为全大写,如 果是由多个单词构成,可以用下划线隔开,例 如: int YEAR, int WEEK_OF_MONTH ;如果 是对象类型的常量,则是大小写混合,由大写 字母把单词隔开。