1.3 Java程序的两种结构

Java程序有两种类型:Java应用程序(Application)和Java小应用程序(简称小程序Applet,即Application let)。这两种Java程序主要有3点不同。

●程序目的不同。

●程序结构不同。

●执行方式不同。

这些区别的具体含义在1.3.1节和1.3.2节中详细讨论。

1.3.1 开发Java应用程序的方法

JDK开发应用程序

若把Java视为通用程序设计语言(General-purpose Programming Language),则它和其他高级语言一样,可解决各种数据处理、科学计算、图形图像处理类问题,这就是设计 Java 应用程序(Application)的目的。下面通过一个简单程序实例说明其结构特点。

【例1.1】写一程序,显示字符串“Welcome to learn Java!”。

例1.1 编程视频

程序如下。

/**the first program in the textbook

*Author Liu

*/

public class Example1_01              //主类

{

public static void main(String args[])   //main方法,程序的入口

{

System.out.println("Welcome to learn Java!");

}

}

JDK中没有提供编辑程序,需要使用操作系统提供的编辑程序或第三方提供的编辑程序。现在使用Windows提供的记事本程序编辑这个程序。打开记事本程序并输入例1.1的程序,然后选择菜单“文件→另存为”,在“另存为”对话框中选择存放程序的文件夹、文件名和文件类型,如图1.2所示。文件名必须与public类的名字相同(包括大小写),再加后缀“.java”;文件类型必须选择“所有文件”,否则存储程序时会在文件名后再加后缀“.txt”。

程序编辑完成后,打开一个命令窗口,在命令窗口中转换路径、编译并运行程序,如图1.3所示。

图1.2 另存对话框

图1.3 程序的编译、运行和运行结果

JDK是最基本的程序开发方法,应该很好地掌握。

这个程序虽然很短小,但是它可以显示出Java应用程序的结构特点。

●程序由至少一个类构成,类是Java程序的模块,Example1_01是类名,一般以大写字母开头。public和static是修饰符,为类和方法赋予不同的属性。

●类中包含一个主方法main(),JVM通过调用main方法来执行程序。

●System.out.println()用于程序输出数据,本例输出的是一个字符串。

●一个源程序中可以定义多个类,但最多只允许一个类使用public修饰符,且程序保存要用带有public修饰的类作为文件名,扩展名为.java。如果没有类使用public修饰,一般用包含main方法的类名作为文件名,但这不是必须的,用别的类名保存也可以。包含main方法的类称为主类。而用public修饰的类称为公共类。

1.3.2 开发Java小应用程序的方法

JDK开发小应用程序

Java 小应用程序(Applet)主要用于嵌入到网页中,使静态网页动态化,使之具有交互性。小程序的执行不再使用JVM运行,而是使用浏览器(Browser)内置的Java解释器运行,Java开发工具中提供的小程序查看器appletviewer.exe也可以执行小程序。关于小程序与1.3.1节中给出的应用程序在程序结构上的不同点,可以通过下面的程序实例说明。

【例1.2】写一程序,显示字符串“Welcome to learn Java!”。

程序如下。

import java.awt.*;

import java.applet.*;

public class Example1_02 extends Applet     //必须基于Applet派生

{

String s1;

public void init()               //重写Applet类的方法

{

s1 = new String("Welcome to learn Java!");

}

public void paint(Graphics g)         //重写Applet类的方法

{

g.drawString(s1,5,20);

}

}

将上述源程序编辑、编译生成Example1_02.class字节码文件,该字节码文件需嵌入到一个网页中执行。用记事本输入下面的网页代码并另存为“Example1_02.html”(文件名大小写无关,用其他名字也可以,文件类型也是“所有文件”)。

<HTML lang="zh-CN">

<HEAD>

<TITLE>My First Java Applet</title>

</HEAD>

<BODY>

Here's my first Java Applet:

<applet code=Example1_02.class width=300 height =40></applet>

</BODY>

</HTML>

打开一个命令窗口,在命令窗口中输入命令“appletviewer Example1_02.html”,程序运行结果如图1.4所示。

图1.4 小程序执行结果

总结一下Java小程序的结构特点。

●类的定义方法不同于应用程序,小程序的类继承于Applet类。

●小程序类内部结构不同,不用main方法。小程序中常见方法包括初始化方法 init、启动方法 start、停止方法 stop、删除方法destroy和绘图方法paint,本例中使用了init和paint两个方法,其他几个方法事实上已从Applet继承下来,只不过没按照自己的需要进行改写,当然也可以加入其他方法到小程序中。