自此学习Java的预备阶段就完了,我们已经在各自电脑上搭建好编程环境。现在正是时候开始来编写并运行第一个Java程序。
接下来我们会用IntelliJ IDEA来创建第一Java工程,并在里面编写Java代码以及运行代码。这个过程涉及的细节比较多,有一定挑战性,但是却是一个最小的完整过程。下面我们一起来一步一步地走向终点。
第一步双击桌面上的IntelliJ IDEA图标,第一次使用这个软件可能会弹出一个小窗口,如下图,
这里选择第二项,不导入设置,直接点击“OK”按钮。软件立刻进入欢迎界面,
在这个界面我们可以新建工程,以及打开电脑上已经存在的工程。关于什么是工程,这里大家有必要了解一下。工程是对单词“Project”的中文释义,本质上是一个文件夹。在每个工程文件夹里面还有各种各样的文件和目录,这些子目录里面可能进一步包含其他文件和目录,有一定的层次结构。而且不同的编程软件所支持的工程不一样。后面在不需要特别指代工程文件夹的时候,就直接用工程来总称。
继续点击欢迎界面中的“New Project”按钮来开始创建一个新工程。
上图是我们点击新建工程后弹出的主界面。因为是英文的,可以暂时驻留几秒钟,看看界面的展示布局。其中灰色字体“New Project”下展示的是这个软件支持的工程类型,这里我们主要关注Java工程,左下角“Generators”区域展示的暂时不用关注。界面右边是我们需要对新工程命名以及指定存放目录的。
首先在Name栏目后面的编辑区输入新工程名字“HelloWorld”,
然后在Location栏目指定存放目录,如“D:\yizhouxuejava”。这里的“yizhouxuejava”目录是我在电脑上D盘创建的空目录。
在创建工程的时候,IntelliJ IDEA会自动在保存目录里面新建一个与工程名同名的目录。
接着我们保持Build system栏目的默认选项。JDK栏目是这个软件自动检测出来的电脑上以及安装好的JDK版本,比如我们前面安装的JDK-22。
最后一步就是取消软件自动添加样例代码,因为我们会从头编写代码。
点击“Create”按钮后,就开始创建我们的新工程了。这个过程非常快,基本上就是一瞬间。创建完工程后,IntelliJ IDEA会自动打开工程文件夹,如下图,
整个工程主界面都是英文的,大家可以花一分钟观察一下界面布局。最左边是工程浏览窗口。
接下来我们需要在这个工程里面编写Java代码。在Java编程中,代码是被保存在特定类型的文本文件中,这类文件往往叫做源代码文件,或者源文件,后缀为“.java”。编写Java代码本质上是编辑某个Java源文件。
选中工程浏览窗口里面的“src”目录,
然后单击鼠标右键,会弹出一个小窗口,
然后继续点击第一项“New”,
接着界面右边继续弹出一个小窗口,我们点击第一项“Java Class”。
如上图,界面立刻弹出一个新的小窗口,这里我们可以为这个Java源文件命名。在编辑区输入HelloWorld,然后回车,
然后整个软件继续回退到工程主界面,不同的是在src目录下新增了一个“HelloWorld.java”文件,软件也自动在右边的编辑区打开了这个源文件。
大家可以看到,尽管前面我们创建工程的时候,已经取消了让软件自动添加样例代码,但是在创建Java源文件的时候,这个软件还是自动智能地添加了一些代码。
当前我们不需要理解这些代码,我们重点关注于走通整个流程,让大家熟悉起来。后面有教程会深入分析这些代码。
这里先贴上完整代码,
public class HelloWorld {
public static void main(String[] args) {
System.out.println("Hello World!");
}
}
下面就到了需要我们自己编写代码的时刻,强烈建议大家一个符号一个符号地输入,并在过程中观察软件弹出的各种小窗口。
比如当输入字母p后,界面立刻弹出来一个提示窗口,
这类窗口是编程软件特有的智能提示功能,能够防止文字层面的代码错误,比如关键单词的拼写错误。
输入完所有代码后的界面如下,
大家要确保自己输入的代码与示例代码完全一样。接下来我们就尝试运行这个Java程序。
点击编辑区左边的绿色三角形按钮,
然后在弹出的小窗口中点击第一项,
可以看见,我们也可以按组合快捷键“Ctrl+Shift+F10”。
点击运行后,软件就开始替我们分配并调用必要的资源来运行这个Java程序。比如调用JDK里面的工具程序“java.exe”。
运行过程中的一些需要被展示出来的信息也会在界面下方的输出窗口展示,
如果大家编写的代码和示例代码一样,运行结果也基本上会和上图一样。可以看见,在下面的输出窗口中,展示了“Hello World!”这样一行。这个结果正是我们第一个Java程序的功能,告诉电脑在屏幕上打印“Hello World!”。
如果你们的结果不一样,可以仔细检测一下自己编写的代码与示例代码的不同,比如输入双引号时是否切换到英文输入法状态,以及是否漏掉了第四行末尾的分号(;),这个分号也需要切换到英文输入法来输入。