2.2 编写第一段Java程序
在完成Java开发环境的安装和配置之后,我们就要开始编写一段Java程序了。然后,我们还要编译这段Java程序并让它运行起来。下面就正式开始我们的Java编程之旅吧!
知识点讲解:
2.2.1 第一段Java代码
现在,让我们打开记事本程序,并在其中输入下面的代码。
(源码路径:daima\2\first.java)
public class first{ /*这是一个 main方法*/ public static void main(String [] args){ /* 输出此消息 */ System.out.println("第一段Java程序!"); } }
然后将该文件保存为first.java。请注意,文件名“first.java”中的字符“first”一定要和代码行“public class first”中的字符“first”一致,并且字母大小写也必须完全一致,否则后面的编译步骤将会失败,如图2-15所示。
图2-15 用记事本编辑文件first.java
注意:可以用来编写Java程序的编辑器。可以使用任何无格式的纯文本编辑器来编辑Java源代码,在Windows操作系统中可以使用记事本(NotePad)、EditPlus等程序,在Linux平台上可使用vi命令等。但是不能使用写字板和Word等文档编辑器来编写Java程序,因为写字板和Word等工具是有格式的编辑器,当我们使用它们编辑一个文档时,这个文档中会包含一些隐藏的格式化字符,这些隐藏字符会导致程序无法正常编译和运行。
2.2.2 关键字
关键字指的是Java系统保留使用的标识符,也就是说,这些标识符只有Java系统才能使用,程序员不能使用这样的标识符。例如在first.java中,public就是一个关键字。另外,关键字还是Java中的特殊保留字。下面我们通过表2-1来具体看一下Java中到底有哪些关键字。
表2-1 Java关键字
另外,true、false和null也都是Java中定义的特殊字符,虽然它们不属于关键字,但也不能被用作类名、方法名和变量名等。另外,表2-1中的goto和const是两个保留字(reserved word)。保留字的意思是,Java现在还未使用这两个单词作为关键字,但可能在未来的Java版本中使用这两个单词作为关键字。
2.2.3 标识符
标识符指的是赋予类、方法或变量的名称。在Java语言中,我们通常会用标识符来识别类名、变量名、方法名、类型名、数组名和文件名。例如在first.java中,代码行“public class first”中的“first”就是一个标识符,它标识的是一个类,该类被命名为“first”。
按照Java语法的规定,标识符可以由大小写字母、数字、美元符号($)组成,但不能以数字开头,标识符没有最大长度限制。例如下面都是合法的标识符。
Chongqin$ D3Tf Two $67.55
关于标识符的合法性,主要可以参考下面4条规则。
❑ 标识符不能以数字开头,如7788。
❑ 标识符中不能出现规定以外的字符,如You'are、deng@qq.com。
❑ 标识符中不能出现空格。
❑ 标识符中只能出现美元字符$,而不能包含@、#等特殊字符。
由于标识符是严格区分大小写的,因此在Java中no和No是完全不同的。除此之外,还需要注意的是,虽然$符号在语法上允许使用,但我们会在编码规范中建议读者尽量不要使用,因为它很容易带来混淆。
注意:在Java 8版本中,如果在标识符中使用了下划线“_”,那么Java编译器会将其标记为警告。如果在lambda(正则)表达式中使用了下划线“_”,则直接将其标记为错误。在Java 10版本中,在任何情况下使用下划线“_”都会被标记为错误。
2.2.4 注释
代码中的注释是程序设计者与程序阅读者之间通信的桥梁,它可以最大限度提高团队开发的效率。另外,注释也是实现程序代码可维护性的重要环节之一。所以程序员不能为写注释而写注释,而应该为了提高代码的可读性和可维护性而写注释。
因为注释不会影响程序的运行,和程序代码的功能无关,所以即使没有注释,也不会妨碍程序的功能。尽管如此,我们还是建议读者养成在代码中添加注释的习惯。在Java程序中有如下3种添加注释的方式。
(1)单行(single-line)注释:使用双斜杠“//”写一行注释内容。
(2)块(block)注释:使用“/*……*/”格式(以单斜杠和一个星号开头,以一个星号和单斜杠结尾)可以写一段注释内容。
(3)文档注释:使用“/**……*/”格式(以单斜杠和两个星号开头,以一个星号和单斜杠结尾)可以生成Java文档注释,文档注释一般用于方法或类。
例如,在first.java中我们还可以在代码中添加以下注释。
/* 多行注释开始: 开始定义一个类 类的名字是first first中的f是小写的 */ public class first{ /** *文档注释部分 * main是一个方法,程序的执行总是从这个方法开始 * @author toppr(作者信息) * */ public static void main(String [] args){ /*虽然是多行注释,但是也可以只写一行:输出此消息 */ System.out.println("第一段Java程序!"); //单行注释:能够输出一段文本 } }
在上述代码中,我们对3种注释方式都做了示范,其中单行注释和块注释部分很容易理解,而文档注释通常由多行构成,一般分多行分别介绍某个类或方法的功能、作者、参数和返回值的信息。
2.2.5 main()方法
在Java语言中,main()方法被认为是应用程序的入口方法。也就是说,在运行Java程序的时候,第一个被执行的方法就是main()方法。这个方法和Java中的其他方法有很大的不同,比如,方法的名字必须是main,方法的类型必须是public static void,方法的参数必须是一个String[]类型的对象等。例如在前面的first.java中,main()方法就负责整个程序的加载与运行。如果一个Java程序没有main()方法,该程序就没法运行。
2.2.6 控制台的输入和输出
控制台(Console)的专业名称是命令行终端,是无图形界面程序的运行环境,它会显示程序在运行时输入/输出的数据。我们在图2-13中看到的就是控制台在输入java version命令之后显示的信息。当然,控制台程序只是众多Java程序中的一类,本书前面章节中的实例都是控制台程序,例如first.java就是一个控制台程序,执行后会显示控制台界面,如图2-16所示。具体执行方法请看本章后面的内容。
图2-16 控制台界面
在Java语言中,通常使用System.out.println()方法将需要输出的内容显示到控制台中。在前面的实例first.java中,使用如下代码在控制台中输出文本“第一段Java程序!”。
System.out.println("第一段Java程序!");