Java语言程序设计
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.3 Java程序举例

由前面介绍已知,Java程序形式分为应用程序和小程序两种,下面通过这两种程序形式的简单例子,对它们进行介绍。

1.3.1 Java应用程序举例

【例1.1】输出信息为Hello World! 的Java应用程序。

            /* Hello.java */
            public class Hello{      // 一个Application
              public static void main (String args[]){
                System.out.println("Hello World!");}
            }

程序中第1 行用“/*”和“*/”括起来的内容和第2 行后面以双斜线“//”引导的内容是Java语言的注释信息。在程序中使用注释,可增加程序的可读性。

第2 行开始是类的定义,保留字class用来定义一个新的类,其后的标识符Hello为类名,它是一个公共类(public)。一个Java源程序中可以定义多个类,但是最多只允许有一个公共类。程序文件名要求与这个公共类的类名相同。整个类定义由大括号{ }括起来,其内部是类体。类体中可以定义类的数据成员和成员方法。在本例中定义了一个main方法,其中public表示访问权限,static指明该方法是一个静态(或类)方法,void则指明该方法不返回值。

对于一个Java应用程序来说,main方法是必须的,而且必须按照如上的格式来定义。Java解释器在没有生成任何对象的情况下,以main方法作为入口来执行程序。每个类中可以定义多个方法,但main方法只能有一个,程序从这里开始执行。main方法定义圆括号()中的String args[]是传送给main方法的参数,参数名为args,它是String类的一个对象。方法的参数用“类名 参数名”来指定,多个参数间用逗号分隔。在main方法的实现(方法体-大括号括起来的部分)中,只有一条语句:

            System.out.println("Hello World!");

它的功能是在标准输出设备(显示器)上输出一行字符:

            Hello World!

这里调用java.lang包中System类的功能,而System.out又是java.io包中OutputStream类的对象,println方法的作用是将圆括号内的字符串在屏幕输出并换行。

1.3.2 Java小程序举例

【例1.2】显示信息为Hello World! 的Java小程序。

            import java.awt.Graphics;
            import java.applet.Applet;
            public class HelloApplet extends Applet{ // 一个Applet
              public void paint(Graphics g){
                g.drawString("Hello World!",20,20);
              }
            }

在这个小程序中,首先用import语句引入java.awt.Graphics类和java.applet.Applet类。这是本小程序需要引入的两个类:小程序需要继承Applet类来构造;图形界面的小程序输出常用具有绘图功能的paint方法,该方法需要Graphics类的参数。然后定义一个公共类HelloApplet,用extends指明它是Applet的子类。Java小程序都是Applet类或JApplet类的子类。在类体中,这里重写Applet父类的paint方法,其中参数g为Graphics类的对象,可认为是用于绘图的画板。在pain方法中,调用对象g的方法drawString,在坐标(20,20)处输出字符串“Hello World!”,其中坐标是用像素点来表示的。

这个小程序没有main方法,这是小程序与应用程序(如例1.1)的主要区别之一。

1.3.3 Java程序结构

从上述例子中可以看出,Java程序是由类构成的,对于一个应用程序来说,必须在一个类中定义有main方法,包含main方法的类是该应用程序的主类。而对小程序来说,它必须作为Applet类或JApplet类的一个子类,继承Applet或JApplet类的类是小程序的主类。下面说明典型的Java程序的书写规范。

1.命名

若Java源文件中包含一个public类,它必须用该类的名称来命名源文件名。例如,在例1.1中,包含一个public类型的Hello类,所以程序文件名必须命名为Hello.java。在例1.2中,包含一个public类型的HelloApplet类,所以程序文件名必须命名为HelloApplet.java。这时,名字中的大小写也要一致,否则编译器会指出错误。

2.程序结构

一个可单独编译的程序模块(源文件)可以包含下面这些内容:

package语句;// 包语句,0或1个,必须放在文件开始位置

import语句;// 引入语句,0或多个,必须放在所有类和接口定义之前

接口(interface)和类(class)定义;// 1个或多个

一个源文件中最多只能有一个public类或接口,其他类和接口的个数不限。

在书写源程序时,最好采用分层次的缩进方式书写,这有助于阅读理解程序,也为调试程序提供便利。教材中例题的书写格式供参考。