Java 2软件开发工具包使用指南
在Java编程中,正确设置环境变量和熟练使用软件开发工具包(SDK)是非常重要的。下面将详细介绍CLASSPATH变量的设置以及SDK中一些常用工具的使用方法。
1. 设置CLASSPATH变量
所有编写的Java程序都依赖于两种类文件:自己创建的类和Java类库。软件开发工具包需要知道在系统中何处找到Java类文件,很多情况下它能自行查找安装文件夹,但也可以通过创建或修改环境变量CLASSPATH来手动设置。
1.1 在Windows 95、98或Me系统上设置CLASSPATH
如果成功编译并运行了HelloSailor程序,说明软件开发工具包已正确配置,无需再做更改。若运行程序时出现“Class not found”或“NoClassDefFound”错误,则需确保CLASSPATH变量设置正确。具体操作步骤如下:
1. 打开Windows记事本,选择“文件” - “打开”,进入系统根文件夹,打开AUTOEXEC.BAT文件。
2. 在文件中查找包含“SET CLASSPATH=”命令的行,其后跟着一系列用分号分隔的文件夹和文件名。
3. CLASSPATH可包含文件夹、文件或句点(“.”),句点在MS - DOS中表示当前文件夹。
4. 在命令行输入“ECHO %CLASSPATH%”可查看系统的CLASSPATH变量。
5. 若CLASSPATH包含已不在计算机上的文件夹或文件,应在AUTOEXEC.BAT的“SET CLASSPATH=”行中删除相关引用,并去除多余分号。
6. 为正确设置软件开发工具包,“SET CLASSPATH=”命令中必须包含Java类库文件tools.jar。若工具包安装在C:\jdk1.4.0文件夹,tools.jar可能在C:\jdk1.4.0\lib文件夹。
7. 若忘记安装位置,可通过Windows任务栏的“开始” - “查找” - “文件或文件夹”查找tools.jar。若找到多个副本,可按以下方法找到正确的:
- 使用CD命令打开包含Java解释器(java.exe)的文件夹。
- 输入命令“CD ..”。
- 输入命令“CD lib”。
8. 确定正确位置后,在AUTOEXEC.BAT文件底部添加一行:“SET CLASSPATH=%CLASSPATH%;.;rightlocation”。例如,若tools.jar在c:\j2sdk1.4.0\lib文件夹,应添加“SET CLASSPATH=%CLASSPATH%;.;c:\j2sdk1.4.0\lib\tools.jar”。
9. 保存AUTOEXEC.BAT文件并重启计算机,再次尝试编译和运行HelloSailor示例程序。
1.2 在Windows NT、2000或XP系统上设置CLASSPATH
在这些系统上,可使用“环境变量”对话框配置Classpath变量,操作步骤如下:
1. 右键单击桌面上的“我的电脑”图标或“开始”菜单中的“我的电脑”,选择“属性”,打开“系统属性”对话框。
2. 点击“高级”选项卡。
3. 点击“环境变量”按钮,打开“环境变量”对话框。
4. 若系统有Classpath变量,它可能是系统变量之一;系统也可能没有该变量,因为软件开发工具包通常可在无此变量的情况下找到类文件。
5. 若系统有Classpath变量,至少应设置两项:当前文件夹引用(句点)和包含Java类库的文件tools.jar的引用。
6. 若工具包安装在C:\jdk1.4.0文件夹,tools.jar在C:\jdk1.4.0\lib文件夹。若忘记安装位置,可通过Windows任务栏的“开始” - “搜索”查找tools.jar。若找到多个副本,按上述方法找到正确的。
7. 确定正确文件夹后,回到“环境变量”对话框。若系统没有Classpath变量,点击“系统变量”列表下的“新建”按钮,打开“新建系统变量”对话框;若有,选择它并点击“编辑”按钮,打开“编辑系统变量”对话框。
8. 在“变量名”字段输入“Classpath”,在“变量值”字段输入正确的Classpath值。例如,若软件开发工具包安装在c:\j2sdk1.4.0,Classpath应包含“.;C:\j2sdk1.4.0\lib\tools.jar”。
9. 设置完成后,点击两次“确定”:一次关闭“编辑”或“新建系统变量”对话框,另一次关闭“环境变量”对话框。与Windows 95、98和Me用户不同,无需重启系统即可测试。打开命令行窗口,输入“java -version”命令,若显示正确的软件开发工具包版本,说明系统可能已正确配置,可再次尝试创建HelloSailor示例程序。
2. 软件开发工具包概述
虽然有几十种开发环境可用于创建Java程序,但最广泛使用的是Sun Microsystems的软件开发工具包(SDK)。它是一组用于用Java语言开发软件的命令行工具,受欢迎的主要原因有两个:
- 免费:可从Sun的官方Java网站http://java.sun.com免费下载。
- 优先支持:每当Sun发布Java语言的新版本,SDK总是最先支持。
SDK使用命令行(在Windows下也称为MS - DOS提示符、命令提示符或控制台,在Unix下称为shell提示符),通过键盘输入命令。每个SDK命令遵循相同格式:工具名称后跟一个或多个指示工具操作的元素,这些元素称为参数。部分参数前加连字符,用于修改工具功能,称为选项。
3. Java解释器(java)
Java解释器用于从命令行运行Java应用程序,它以要运行的类文件名为参数,例如“java BidMonitor”。使用解释器时无需指定.class扩展名。被加载的类必须包含一个名为main()的类方法,格式如下:
public static void main(String[] arguments) {
// 方法内容
}
简单的Java程序可能只包含一个包含main()方法的类,复杂程序使用其他类时,解释器会自动加载所需的其他类。Java解释器运行字节码,Java程序保存为.class文件的字节码后,可由不同解释器运行而无需修改。
指定要运行的类文件有两种方式:若类不属于任何包,可直接指定类名;若类属于某个包,则需使用完整的包名和类名。例如,要运行属于com.prefect.auction包的SellItem类,应使用命令“java com.prefect.auction.SellItem”。Java解释器会在以下位置查找SellItem.class文件:
- 输入java命令的文件夹的com\prefect\auction子文件夹。
- CLASSPATH设置中任何文件夹的com\prefect\auction子文件夹。
若创建自己的包,可将一个文件夹添加到CLASSPATH作为包的根文件夹,创建对应包名的子文件夹后,将包的类文件放在正确的子文件夹中。
Java 2版本1.4支持断言功能,若要使用Java解释器运行包含断言的程序,可使用命令行选项“-ea”,如“java -ea Outline”。解释器将执行应用程序类及其使用的所有其他类文件中的所有assert语句,但Java类库中的类除外。若要使用所有断言,可使用“-esa”选项。若未指定开启断言功能的选项,解释器将忽略所有assert语句。
4. Java编译器(javac)
Java编译器javac将Java源代码转换为一个或多个可由Java解释器运行的字节码类文件。Java源代码存储在扩展名为.java的文件中,可使用任何能保存无特殊格式代码文档的文本编辑器或文字处理器创建。
一个Java源代码文件可包含多个类,但只能有一个类被声明为public。若源代码文件包含一个声明为public的类,文件名必须与该类名匹配。例如,名为BuyItem的公共类的源代码必须存储在BuyItem.java文件中。
编译文件时,使用javac工具并以源代码文件名作为参数,如“javac BidMonitor.java”。也可同时编译多个源文件,如“javac BidMonitor.java SellItem.java”,还可使用通配符,如“javac *.java”编译文件夹中的所有.java文件。编译一个或多个Java源代码文件时,每个成功编译的Java类将生成一个单独的.class文件。
若编译使用断言的程序,必须使用“-source 1.4”选项,如“javac -source 1.4 Outline.java”,因为Java 2版本1.4是首个支持assert语句的版本。若不使用该选项而尝试编译包含断言的程序,javac会显示错误信息并拒绝编译。
编译器的其他有用选项包括:
- “-deprecation”:使编译器列出Java程序中使用的所有已弃用方法。
- “-O”:优化类文件,使静态、final或private方法可能被内联编译,提高执行速度,但会使类文件变大。
- “-g”:将所有调试信息(包括行号、局部变量和源代码引用)放入类文件,用于调试;“-g:none”则不包含这些信息。
- “-verbose”:使编译器在编译源代码时提供更多信息,如完成不同功能所需的时间、加载的类以及总耗时。
通过以上对CLASSPATH变量设置和SDK工具使用的介绍,希望能帮助你更高效地进行Java编程。若在使用软件开发工具包时遇到问题,可访问http://www.java24hours.com/查找解决方案。
5. Java小程序查看器(appletviewer)
Java小程序查看器用于运行Java小程序。与Java应用程序不同,小程序是嵌入在网页中的Java程序,通常用于在网页上实现动态交互效果。
使用
appletviewer
工具时,需要提供一个包含小程序定义的HTML文件作为参数。例如,若有一个名为
MyApplet.html
的HTML文件,其中包含一个Java小程序的定义,可使用以下命令运行该小程序:
appletviewer MyApplet.html
在HTML文件中,通常使用
<applet>
标签来定义小程序。以下是一个简单的HTML文件示例:
<!DOCTYPE html>
<html>
<head>
<title>My Java Applet</title>
</head>
<body>
<applet code="MyApplet.class" width="300" height="200">
Your browser does not support Java applets.
</applet>
</body>
</html>
在上述示例中,
code
属性指定了小程序的类文件,
width
和
height
属性定义了小程序的显示大小。
6. Java文档工具(javadoc)
Java文档工具
javadoc
用于从Java源代码文件中提取注释并生成HTML格式的文档。良好的文档对于代码的维护和理解非常重要,
javadoc
可以帮助开发者自动生成专业的代码文档。
使用
javadoc
工具时,以Java源代码文件或包含源代码文件的目录作为参数。例如,若要为
MyClass.java
文件生成文档,可使用以下命令:
javadoc MyClass.java
若要为一个目录下的所有Java文件生成文档,可使用以下命令:
javadoc -d docs *.java
其中,
-d
选项指定了生成文档的输出目录,这里指定为
docs
目录。
在Java源代码中,使用特定格式的注释来提供文档信息。这些注释以
/**
开头,以
*/
结尾,通常位于类、方法或字段的定义之前。以下是一个使用
javadoc
注释的示例:
/**
* 这是一个简单的Java类,用于演示javadoc的使用。
*/
public class MyClass {
/**
* 这是一个简单的方法,用于打印一条消息。
* @param message 要打印的消息
*/
public void printMessage(String message) {
System.out.println(message);
}
}
javadoc
会提取这些注释并生成详细的HTML文档,包括类的描述、方法的参数和返回值等信息。
7. Java调试器(jdb)
Java调试器
jdb
用于查找Java程序中的错误并了解程序的性能。它允许开发者在程序执行过程中暂停程序,检查变量的值、调用栈等信息,从而帮助定位和解决问题。
使用
jdb
调试Java程序的基本步骤如下:
1.
编译时添加调试信息
:在编译Java源代码时,使用
-g
选项将调试信息包含在类文件中,例如:
javac -g MyClass.java
-
启动调试器
:使用
jdb命令并指定要调试的类名,例如:
jdb MyClass
-
设置断点
:在程序中设置断点,当程序执行到断点处时会暂停。例如,在
MyClass类的printMessage方法的第一行设置断点:
stop in MyClass.printMessage
-
运行程序
:使用
run命令启动程序,程序会在遇到断点时暂停:
run
-
检查变量和调用栈
:程序暂停时,可使用
print命令检查变量的值,使用where命令查看调用栈信息。例如,检查message变量的值:
print message
-
继续执行程序
:使用
cont命令继续执行程序,直到下一个断点或程序结束。
8. 设置系统属性
在Java中,可以使用Java解释器和小程序查看器设置系统属性。系统属性是一些全局变量,可用于配置Java程序的行为。
使用Java解释器设置系统属性时,使用
-D
选项,后跟属性名和属性值。例如,设置一个名为
my.property
的属性,值为
value
:
java -Dmy.property=value MyClass
在Java程序中,可以使用
System.getProperty()
方法获取系统属性的值:
public class MyClass {
public static void main(String[] args) {
String propertyValue = System.getProperty("my.property");
System.out.println("Property value: " + propertyValue);
}
}
使用小程序查看器设置系统属性时,可在HTML文件中使用
<param>
标签。例如:
<!DOCTYPE html>
<html>
<head>
<title>My Java Applet</title>
</head>
<body>
<applet code="MyApplet.class" width="300" height="200">
<param name="my.property" value="value">
Your browser does not support Java applets.
</applet>
</body>
</html>
在小程序中,可以使用
getParameter()
方法获取系统属性的值:
import java.applet.Applet;
import java.awt.Graphics;
public class MyApplet extends Applet {
public void paint(Graphics g) {
String propertyValue = getParameter("my.property");
g.drawString("Property value: " + propertyValue, 10, 20);
}
}
总结
通过对CLASSPATH变量的设置以及Java软件开发工具包中各个工具的详细介绍,我们了解了如何创建、编译、运行、调试和文档化Java程序。以下是一个简单的总结表格:
| 工具名称 | 功能描述 | 使用示例 |
| ---- | ---- | ---- |
|
java
| 运行Java应用程序 |
java MyClass
|
|
javac
| 编译Java源代码 |
javac MyClass.java
|
|
appletviewer
| 运行Java小程序 |
appletviewer MyApplet.html
|
|
javadoc
| 生成Java代码文档 |
javadoc MyClass.java
|
|
jdb
| 调试Java程序 |
jdb MyClass
|
在实际的Java开发中,合理使用这些工具可以提高开发效率,确保程序的质量和性能。同时,通过设置CLASSPATH变量和系统属性,可以更好地配置Java开发环境。希望这些内容能帮助你在Java编程的道路上取得更好的成果。若在使用过程中遇到问题,可访问http://www.java24hours.com/查找解决方案。
下面是一个简单的mermaid流程图,展示了Java程序开发的基本流程:
graph LR
A[编写Java源代码] --> B[编译源代码]
B --> C{是否有编译错误}
C -- 是 --> A
C -- 否 --> D[运行程序]
D --> E{是否有运行错误}
E -- 是 --> F[调试程序]
F --> A
E -- 否 --> G[生成文档]
这个流程图清晰地展示了从编写Java源代码到最终生成文档的整个开发过程,帮助开发者更好地理解和掌握Java开发的流程。
超级会员免费看

被折叠的 条评论
为什么被折叠?



