1.3.4 HelloWorld程序的纠错

初次编写程序时,可能会出现各种错误。下面来了解错误原因和HelloWorld示例程序中常见的一些错误。

在运行程序之前,必须创建程序并进行编译。如果程序有编译错误,必须修改程序来纠正错误,然后重新编译它。如果程序有运行时的错误或者不能产生正确的结果,必须修改这个程序,重新编译,然后重新执行。

如果没有语法错误,编译器(compiler)就会生成一个后缀名为class的文件。如果有语法错误,编译器在生成.class文件时会执行失败,并报出相关的错误信息。如将HelloWorld程序中的System关键字换成system,然后测试编译,如图1.9所示。

图1.9 System写错的情形

接着利用javac命令进行编译,结果如图1.10所示。

图1.10 编译出错信息

程序编译失败,并报出错误信息。根据错误信息可以排查并改正Java程序,然后正确运行。

下面总结了开发中几种常见的错误。

1.遗漏右括号

括号用来标识程序中的块。每个左括号必须有一个右括号匹配。常见的错误是遗漏右括号。为避免这个错误,只要输入左括号的时候就输入右括号,如下面的例子所示:


public class HelloWorld { 
 
} // 立刻输入右括号以匹配左括号

如果使用Eclipse这样的集成开发环境,将自动为每个输入的左括号插入一个右括号。

2.遗漏分号

每个语句都以一个语句结束符“;”结束。通常,新手会忘了在一个块的最后一行语句后加上语句结束符,如下面例子所示:


public static void printTab() { 
     System.out.println("1\t2\t3"); 
     System.out.println("44\t55\t66") //遗漏语句结束符 
}

3.遗漏引号

字符串必须放在引号中。通常,编程入门者会忘记在字符串结尾处加上一个引号,如下面例子所示:


public static void printTab() { 
     System.out.println("1\t2\t3"); 
     System.out.println("44\t55\t66) //遗漏引号 
}

4.大小写拼写错误

Java是大小写敏感的语言。有些新手常将大小写拼写错误,如将System写成system等。下面的代码将main错误拼写成Main,导致程序编译错误:


public static void Main(String[]args) { 
     System.out.println("1\t2\t3"); 
}

5.文件名与类名不一致

源文件的后缀名必须是java,而且文件名必须与公共类名完全相同。如果文件名为HelloWorld.java,但类名写成了helloWorld,程序将报错,如图1.11所示。

图1.11 类名错误