本节书摘来异步社区《Java编码指南:编写安全可靠程序的75条建议(英文版)》一书中的第2章,第2.3节,作者:【美】Fred Long(弗雷德•朗),Dhruv Mohindra(德鲁•莫欣达), Robert C. Seacord(罗伯特 C.西科德),Dean F.Sutherland(迪恩 F.萨瑟兰),David Svoboda(大卫•斯沃博达),更多章节内容可以访问云栖社区“异步社区”公众号查看。
2.3 开始输入程序
NetBeans将所有相关的程序分组列入到一个项目中。如果你还没有打开Java24项目,可采用如下方式打开。
选择菜单命令File->Open Project。
找到并选择NetBeansProjects文件夹(如果有必要)。
选择Java24,并单击Open Project按钮。
Java24项目出现在项目(Projects)面板中,它靠近一个咖啡杯图标,而且有一个加号(+),点击这个加号可以查看项目包含的文件和文件夹。
为了添加一个新的Java程序到当前的项目中,选择File->New File,打开New File Wizard对话框,如图2.1所示。
分类(Categories)面板会列出用户可以创建的所有 Java 程序的类型。在该面板中单击“Java”文件夹来查看属于该分类的文件类型。对本项目而言,选择“Empty Java File”类型,然后单击Next按钮。
出现一个New Empty Java File对话框。根据下述步骤来编写程序。
1. 在Class Name字段,输入“Saluton”,
2. 在Package字段,输入“com.java24hours”。
3. 然后单击Finish按钮。
现在可以开始编程工作。一个名为Saluton.java的空文件将在源代码编辑器中打开。在源代码编辑器中,通过输入程序清单2.1中的每一行语句,由此开启你的Java编程生涯。这些语句称为程序的源代码。
警告:
不要输入每行前面的行号和冒号,它们在本书中的目的是方便引用特定的代码行。
程序清单2.1 Saluton程序
1: package com.java24hours;
2:
3: class Saluton {
4: public static void main(string[] arguments) {
5: // My first Java program goes here
6: }
7: }```
确保代码的大小写与该程序清单中一致,并使用空格键或Tab键在第4行~第6行前面插入空白。当输入完后,选择File->Save,保存文件。
当前,Saluton.java只包含Java程序的架构。读者可以创建多个开头与此相同的程序,当然,第3行的单词Saluton除外。该单词表示程序的名称,而且每个程序都不同。第5行是一个英语句子,你应该能看得懂。其他内容对你来说是全新的。
####2.3.1 class语句
程序的第1行如下:
package com.java24hours;`
包(package)是将Java程序组合起来的一种方式。这一行告诉计算机将程序的包名称命名为com.java24hours。
第2行是一个空行,第3行如下所示:
class Saluton {```
把这句话翻译成自然语言的意思是:计算机,请将我的Java程序命名为Saluton。
第1章讲到,输入到计算机的每条指令都被称为语句。class语句让你能够给计算机程序指定名称,它还可以确定程序的其他方面,这将在后面介绍。术语 class 的意义在于 Java程序也叫class(类)。
在这个例子中,程序名Saluton与文档名Saluton.java匹配。Java程序的名称应与其文件名的第1部分相同,而且大小写完全一致。
如果程序名与文件名不匹配,编译有些Java程序时可能会出错,而是否出错则取决于如何使用class语句来配置程序。
####2.3.2 main语句的作用
该程序的下一行如下:
public static void main(String[] arguments) {`
这行语句告诉计算机:程序的主要部分从这里开始。Java程序被组织成多个不同的部分,所以在运行程序时,需要有种方法指出首先执行哪部分。
大多数Java程序的入口都是main语句,但applet、servlet和app例外。其中,applet是由Web浏览器在Web页面上运行的程序;servlet是由Web服务器运行的程序;而app是由移动设备运行的程序。
下来的几章中,你编写的大多数程序都将main作为起点。原因是你是在计算机上直接运行它们,而applet、app和servlet则是由其他程序或设备间接运行的。
为了与其他类型进行区分,我们将直接运行的程序称为应用程序。
2.3.3 大括号
在Saluton程序中,第3、4、6、和7行都包含一个大括号,要么是“{”,要么是“}”。这些大括号用于将程序中的语句分组(与小括号类似,小括号是用来将句子中的单词分组)。在左大括号“{”和右大括号“}”之间的内容属于同一组。
这些语句组称为块。在程序清单2.1中,第3行的左大括号“{”与第7行的右大括号“}”对应,它们将整个程序作为一个块。可以用这种方式来指示程序的开始和结尾。
块可以包含其他块(就像小括号可以这样使用“((……))”一样)。在Saluton程序中,第4行和第6行的大括号指定了另一个块。
这个块以main语句打头。程序运行时,计算机将运行main语句块中的内容。
下面的语句是该语句块中唯一的内容:
// My first Java program goes here```
该行这是占位行,行首的//告诉计算机忽略本行,在程序中放置它的目的在于方便人们阅读程序的源代码。用于该目的的行被称为注释。
注意:
NetBeans可以显示块的开始位置和结束位置。在Saluton程序的源代码中单击其中一个大括号,这个大括号以及与之对应的大括号将显示为黄色。封装在这些黄色大括号中的Java语句组成了一个块。在Saluton这样的小程序中,这一提示的用处不大,但是当程序很长时,它可以免得让你像个无头苍蝇一样进行查找。