●实验任务
掌握开发Java应用程序的三个步骤:编写源文件、编译源文件和运行应用程序。
●实验要点
首先设置运行环境。
打开【控制面板】窗口,双击【系统】图标,弹出【系统属性】对话框;另一种方式是在【我的电脑】图标上右击,选择【属性】菜单项,也可以打开【系统属性】对话框,如图1.2所示。然后选择【高级】选项卡,单击【环境变量】按钮后,如图1.3所示。需要对【环境变量】选项区域中的选项进行设置。
图1.2 【系统属性】对话框
图1.3 【环境变量】对话框
①设置JAVA H_OME环境变量
【系统变量】选项区域中通常没有JAVA H_OME变量,可以单击【新建】按钮,打开如图1.4所示的对话框。
在【变量名】文本框中输入JAVA H_OME,【变量值】文本框中输入安装路径,例如:C:\Program Files\Java\jdk1.6。
图1.4 新建JAVAH_OME环境变量
②设置Path环境变量
【系统变量】选项区域中通常已有Path变量(没有则新建),单击【编辑】按钮,打开如图1.5所示的对话框。
在【变量值】文本框中输入Java开发工具的所在路径,即bin文件夹的所在路径。可以填写绝对路径,例如C:\Program Files\Java\jdk1.6\bin;或者输入相对路径,由于前面已经定义JAVA H_OME变量,所以相对路径是%JAVA H_OME%bin。
注意:【变量值】文本框中还有一些其他路径,每个路径之间用“;”隔开。
图1.5 编辑Path环境变量
③设置CLASSPATH环境变量
【系统变量】选项区域中通常已有CLASSPATH变量(没有则新建),单击【编辑】按钮,打开如图1.6所示的对话框。
图1.6 编辑CLASSPATH环境变量
Java源程序一般用.java作为扩展名,是一个文本文件,用Java语言写成,可以用任何文本编辑器来编辑。可以通过“程序”->“附件”->”记事本”来打开Windows自带的文本编辑器。程序编写完成后,保存文件。注意:文件名保存为FirstJava.java。
使用DOS命令进入FirstJava.java文件所存放的目录(如E:\java)下,使用javac命令编译该应用程序,通过编译该文件夹下会生成一个名为FirstJava.class的class文件,该文件包含程序的字节码,Java字节码中包含的是Java解释程序将要执行的指令码,使用java命令执行该class文件,可在控制台下看到执行结果,如图1.7所示。
图1.7 程序FirstJava.java在控制台下的输出结果
●实验分析
可能会遇到下列错误提示:
① Command not Found:没有设置好系统变量Path。
② File not Found:没有将源文件保存在当前目录中,或源文件的名字不符合有关规定。要特别注意:Java语言的标识符号是区分大小写的。
③出现一些语法错误提示。例如,在汉语输入状态下输入了程序中需要的语句符号等。Java源程序中语句所涉及的小括号及标点符号都是英文状态下输入的,比如“你好,欢迎学习Java”中的引号必须是英文状态下的引号,而字符串里面的符号不受汉语或英语的限制。
④ Exception in thread' main' java.lang.NoClassFoundError:没有设置好系统变量ClassPath,或运行的不是主类的名字,又或程序没有主类。
●实验主要代码
/**
此类用于在屏幕上显示消息。
**/
该程序的功能是在显示器屏幕的当前光标处输出显示字符串:你好!欢迎使用Java语言。
(1)在Java中源程序的文件名并不是任意的,它必须和程序中定义的public类名相同,扩展名必须是java。另外,由于Java是区分大小写的,所以也应确保文件名的大小写字母和类名一致。
(2)所有的Java应用程序都通过调用main()方法开始执行,因此在Application的声明中对main()方法的定义是必不可少的。修饰符static说明该方法是静态的,它可以在创建对象之前被调用。
(3)public class FirstJava是一个类,是Java程序的基本组成部分。在Java中,所有功能都是以类的方式实现的。每一个类都是由关键字class和类名组成。其中类名是自己定义的,且含有main()方法的类的类名和源程序文件的文件名必须一致。
(4)可以添加注释。注释用来解释程序,使程序更好理解,它不会被执行。可以用∥加单行的注释,用/*…*/或者/**…**/加多行的注释。
(5)使用的变量名、对象名、方法名等标识符要有意义,尽量做到“见名知义”。
●实验任务
使用Eclipse编写Java应用程序FirstJava.java,根据命令行参数输出相应信息(如“您好!欢迎使用Java语言”)。
●实验要点
(1)打开Eclipse。双击eclipse.exe,启动Eclipse平台。
(2)配置Eclipse的Workspace。初次打开Eclipse,会要求用户配置Eclipse的Workspace,点击Browse,选择合适的工作区保存位置即可。
(3)创建Java项目名Java。执行File->New->Java Project菜单命令,打开New Java Project对话框。在Project name文本框中输入项目名称Java,然后单击Finish按钮,如图1.8所示。
图1.8 NewJavaProject对话框
(4)创建Java类FirstJava。执行File->New->Class菜单命令,打开New Java Class对话框。在Name文本框中输入项目名称FirstJava,选中public static void main(String[]args)复选框,以自动创建main()方法框架,然后单击Finish按钮,如图1.9所示。
图1.9 NewJavaClass对话框
(5)在工作区编辑FirstJava代码。
(6)运行程序。执行Run->Run菜单命令,也可使用快捷键Ctrl+F11或单击调试工具栏中的启动运行按钮,运行结果如图1.10所示,提示用户输入参数。
图1.10 提示用户输入参数
(7)配置运行参数并调试运行。执行Run->Run Configurations菜单命令,打开Run Configurations对话框。选择Arguments选项卡,在Program arguments文本框中输入命令行参数“欢迎使用Java语言”,如图1.11所示。
图1.11 输入命令行参数
(8)运行结果。单击Run按钮,运行结果如图1.12所示。
图1.12 提供命令行参数的运行结果
●实验分析
源代码编辑结束后,保存源代码,观察代码编辑窗口是否出现 标志。如果在某行代码前出现该符号,说明这行代码存在语法错误,同时在控制台窗口会出现错误提示,需进行修改。比如在输入”System.out.println(“请输入参数”)语句时没有写“;”,就会出现如图1.13所示的错误提示。若没有出现该符号,说明源代码不存在语法错误,可以运行该程序。
图1.13 程序出现错误情况图示
出现错误,可以把鼠标停在 标志查看错误,也可以设置断点查看变量的中间结果加以调试解决。
●实验主要代码
●实验任务
学习Java中Java Applet小程序的使用方法。
●实验要点
Applet程序开发主要步骤如下:
1)选用Eclipse、记事本等工具作为编辑器建立Java Applet源程序。
2)把Applet的源程序转换为字节码文件。
3)编制使用class的HTML文件。在HTML文件内放入必要的<APPLET>语句。
下面举一个最简单的Second例子来说明Applet程序的开发过程:
(1)编辑Applet的java源文件
创建文件夹E:\Java,在该文件夹下建立Second.java
(2)编译Applet
编译Second.java源文件可使用如下JDK命令:
E:\Java\javac Second.java<Enter>
注意:如果编写的源程序违反了Java编程语言的语法规则,Java编译器将在屏幕上显示语法错误提示信息。源文件中必须不含任何语法错误,Java编译器才能成功地把源程序转换为appletviewer和浏览器能够执行的字节码程序。
成功地编译Second.java之后生成响应的字节码文件Second.class的文件。用资源管理器或DIR命令列出目录列表,将会发现目录E:\Java中多了一个名为Second.class的文件。
(3)创建HTML文件
在运行创建的Second.class之前,还需创建一个HTML文件,appletviewer或浏览器将通过该文件访问创建的Applet。为运行Second.class,需要创建名为Second.html的文件。
本例中,<APPLET>语句指明该Applet字节码类文件名和以像素为单位的窗口的尺寸。虽然这里HTML文件使用的文件名为Second.html,它对应于Second.java的名字,但这种对应关系不是必须的,可以用其他的任何名字(比如说temp.HTML)命名该HTML文件。但是使文件名保持一种对应关系可给文件的管理带来方便。
(4)执行Second.html
如果用appletviewer运行Second.html,需输入如下的命令行:
E:\java\appletviewer Second.html<ENTER>
可以看出,该命令启动了appletviewer并指明了HTML文件,该HTML文件中包含对应于Second的<APPLET>语句。
至此,一个Applet程序的开发运行整个过程结束了(包括java源文件、编译的class文件、html文件以及用appletviewer或用浏览器运行)。
●实验分析
Applet类是所有Applet应用的基类,所有的Java小应用程序都必须继承该类。
Applet类的构造函数只有一种,即:public Applet()。
Applet类中的四种基本方法用来控制其运行状态:init()、start()、stop()、destroy()。
(1)init()方法
这个方法主要是为Applet的正常运行做一些初始化工作。当一个Applet被系统调用时,系统首先调用的就是该方法。通常可以在该方法中完成从网页向Applet传递参数,添加用户界面的基本组件等操作。
(2)start()方法
系统在调用完init()方法之后,将自动调用start()方法。而且,每当用户离开包含该Applet的主页后又再返回时,系统又会再执行一遍start()方法。这就意味着start()方法可以被多次执行,而不像init()方法。因此,可把只希望执行一遍的代码放在init()方法中。可以在start()方法中开始一个线程,如继续一个动画、声音等。
(3)stop()方法
这个方法在用户离开Applet所在页面时执行,因此,它也是可以被多次执行的。它使你可以在用户并不注意Applet的时候,停止一些耗用系统资源的工作以免影响系统的运行速度,且并不需要人为地去调用该方法。如果Applet中不包含动画、声音等程序,通常也不必实现该方法。
(4)destroy()方法
与对象的finalize()方法不同,Java在浏览器关闭的时候才调用该方法。Applet是嵌在HTML文件中的,所以destroy()方法不关心何时Applet被关闭,它在浏览器关闭的时候自动执行。在destroy()方法中一般可以要求收回占用的非内存独立资源。(如果在Applet仍在运行时浏览器被关闭,系统将先执行stop()方法,再执行destroy()方法。
●实验主要代码
将Second.java编译成字节码文件Second.class。然后把文件Second.class嵌入到Second.html文件中,文件代码如下:
在Web浏览器,运行Second.html文件,运行结果如图1.14所示。
图1.14 Applet程序运行结果