1.3 深入探讨“HelloWorld”应用程序
本节将详细介绍HelloWorld源程序,在1.2节读者已经看到如何编写、编译和执行Java源程序。但是读者或许想知道源程序到底是如何运行的。为了更好地说明,这里再次列出该代码程序。
01 /** 02 HelloWorld类的功能是在标准输出端 03 打印一行输出“HelloWorld!” 04 */ 05 public class HelloWorld{ //定义一个HelloWorld类 06 public static void main(String[] args){ //主方法 07 System.out.println("HelloWorld!"); //调用标准输出打印字符串 08 } 09 }
该源程序包括三个部分:程序注释、类定义和main()方法。通过对这三部分的说明,读者应该理解程序HelloWorld的基本执行过程。至于更细节的内容,后面的章节会继续讲解。
1.3.1 注释源代码
在程序中有这样的注释部分,如以下代码所示:
01 /** 02 HelloWorld类的功能是在标准输出端 03 打印一行输出“HelloWorld!” 04 */
这是Java的注释部分,其格式是“/**注释*/”,程序会忽略注释的内容。
良好的注释可以增强程序的可读性和可维护性,读者应该养成写注释的习惯。Java支持三种注释方式。
1)双斜线“//”在程序中表示注释,注释的字句不会编译,即编译器会略过该行。如:
System.out.println("Hello Java!!!"); //在DOS窗口打印一行字符:Hello Java!!!
“//”表示单行注释,一般用在代码行的后面。
01 /*定义一个类 02 该类是示例程序,程序提供了一个入口,执行结果是在DOS窗口打印一行字符串 03 “Hello Java!!!” 04 */
3)内嵌式文档注释。该类注释多用在集成开发环境下,如Eclipse等,其方式如下:
01 /** 02 注释内容 03 */
该注释可以出现在类和接口的声明前、各种方法(函数)的定义前。在集成开发环境中,只要输入“/**”,再按回车键,就会自动形成注释的样式。
1.3.2 实现类定义
下面代码的粗体字部分是类定义部分,其语法格式是class classname{code},其中关键字class声明这是一个类,后面紧跟类名HelloWorld,用两个大括号括起来的部分是类定义的主体部分。
01 /** 02 HelloWorld类的功能是在标准输出端 03 打印一行输出“HelloWorld!” 04 */ 05 public class HelloWorld{ //定义一个HelloWorld类 06 public static void main(String[] args){ //主方法 07 System.out.println("HelloWorld!"); //调用标准输出打印字符串 08 } 09 }
【代码说明】上述代码中第1~4行为注释代码,第5行定义了一个名为HelloWorld的类,在第6~8行定义类的主方法,该方法实现打印字符串“HelloWorld!”。
具体的类介绍可以参考第7章,这里读者只需要理解该应用程序从一个类定义开始即可。
1.3.3 详解main()方法
使用Java语言编写的应用程序必须包含一个main()方法,它的格式如下所示:
public static void main(String[] args)
修饰符public和static的顺序可以互换,但是根据Java惯例是把public放在前面;参数名args不是固定的,开发者可以任意命名,但是习惯上选择使用args或argv。
main()方法是应用程序的入口,一个程序执行时会首先从类的main()方法开始,再启动程序所需要的其他资源。main()方法接收一个字符串数据参数,实际上该参数提供了运行时系统向应用程序提供参数的途径。当然也可以不传递任何参数。如果一个应用程序可以读取一系列文件,则需要把这些文件的绝对路径告诉该程序。该参数是命令行参数,即在调用java ClassName时使用,方式为java ClassName args。
笔者在编译HelloWorld程序时没有输入参数,该应用程序忽略了该参数。但是读者一定要注意确实存在这样的参数,也允许调用这样的参数为应用程序所用。