第一个Java程序

我们有两种方式从计算机获得信息:一是看屏幕上的文字、图片、视频等,二是听从喇叭发出来的声音。让喇叭发出声音目前还比较麻烦,我们先来看看如何通过 Java 程序在屏幕上显示一些文字吧。

1. 编写Java程序

编写 Java 程序,首先我们需要选择一些无格式的文本编辑器,例如 Windows 系统的记事本、Linux 系统的 VI 文本编辑器等。

切忌使用写字板、Word 等有格式的文本编辑器编写 Java 程序。这些文本编辑器在编辑文档时,文档中会包含一些隐藏的格式化字符,会导致程序无法正常编译、运行。

下面,我们就以 Windows 系统的记事本为例来进行演示,步骤如下。

1. 在 Java 中,在屏幕上显示文字的方式十分简单,只需要一个语句即可。例如下面的代码会让屏幕显示出“C语言中文网”。
System.out.println("C语言中文网");

这里,System.out.println是 Java 中的一种固定写法,用来让计算机屏幕显示一段文字,显示的内容就是后面小括号中双引号包裹的部分,即:C语言中文网

在汉语和英语中,分别使用.表示一句话的结束,而在 Java 中,使用;表示一个语句的结束。System.out.println("C语言中文网")表达了完整的意思,是一个完整的语句,因此需要在最后加上;,表示当前语句结束了。

2. 虽然System.out.println语句可以在屏幕上显示文字,但仅仅有它是不够的,程序不能运行。我们还需要添加一些其他的代码,构成一个完成的框架,完整代码如下。

public class HelloJava {
    public static void main(String[] args) {
        System.out.println("C语言中文网");
    }
}

为了便于理解,我们可以将上面的代码拆分为以下两个部分。

组成部分 说明
public class HelloJava {

}
在这段代码中,HelloJava是我们自定义的,我们可以根据自身需求随意修改,但习惯上每个单词的首字母需要大写;public class以及最后的大括号{ } 都是固定写法,不可修改。
public static void main(String[] args) {
    System.out.println("C语言中文网");
} 
在这段代码中,public static void main(String[] args) {} 是 Java 中的一种固定写法。

public static void main(String[] args) {}是 Java 程序的入口,所有的 Java 程序都是从它开始执行的,执行的内容就是{ }中的代码,即 System.out.println("C语言中文网");

3. 将编写好的文件另存为 HelloJava.java,保存类型选择“所有文件”,然后点击“保存”按钮,将文件保存到 D:\myJava(自行定义)目录中,如下图。
 

图1:HelloJava.java

2. 运行Java程序

在编写好 Java 源代码之后,接下来,我们就可以开始运行 Java 程序了。

2.1 编译

首先,我们需要使用 JDK 提供的javac命令将 Java 源文件编译成字节码文件,步骤如下。

1. 在“开始菜单”中选择“运行”,在对话框输入cmd命令, 然后点击下方“确定”按钮进入命令行窗口,如下图。

运行窗口
图2:运行窗口

2. 在命令行窗口中,通过以下命令进入 Java 源文件所在的目录。
C:\Users\79330>d:

D:\>cd d:\myJava

3. 使用 javac命令对 HelloJava.java 进行编译。
d:\myJava>javac HelloJava.java

执行完命令后,若没有任何错误信息,则说明编译通过,如下图。


图3:编译通过

3. 打开 HelloJava.java 所在的目录,我们会发现该目录下多了一个名为 HelloJava.class 的文件,这便是我们编译之后得到字节码文件,如下图所示。

字节码文件
图4:编译之后字节码文件

2.2 运行

接下来,我们就可以通过 JDK 提供的java命令来运行这个 Java 程序了,步骤如下。

1. 在命令行窗口中输入以下命令,执行 Java 程序。
d:\myJava>java HelloJava

2. 执行完命令后,若命令行窗口中显示了“C语言中文网”,则说明 Java 程序运行成功,如下图。

Java 程序运行结果
图5:Java 程序运行结果

注意:至此,我们就完成了本节主要内容(即 Java 程序从编写到编译,再到运行的整个过程)的讲解。如果您在此期间并未遇到任何问题,那么恭喜您,您可以继续下一节《 Java 基本编程规则》的学习了。如果您在编译或运行程序时遇到了一些错误或问题,那么下面的内容或许能给您带来一些帮助。

常见问题及解决方案

作为一个初学者,我们在编译和运行第一个 Java 程序时难免会出现这样或那样的错误。下面,我们就列举了一些在编译和执行阶段常见的错误以及它们的解决方案,如下表。

阶段 错误 原因 解决方案
编译
 
错误: 编码 GBK 的不可映射字符 (0xA3) 计算机系统的编码格式为 GBK,而 Java 程序的源文件为 UTF-8,两者不一致导致编译时出现错误。 解决方案一:运行编译命令时指定编码格式为 UTF-8,命令为:javac -encoding utf-8  HelloJava.java

解决方案二: 使用记事本打开 Java 源文件,另存为选择 ANSI 编码,然后重新编译,如下图。

错误: 仅当显式请求注释处理时才接受类名称 'HelloJava' 在使用 javac 命令进行编译时,后面的 Java 源文件名缺少后缀 .java,错误的命令如下:
D:\myJava>javac HelloJava
正确的使用 javac 命令,为javac命令后面的 Java 源文件名增加 .java 后缀,命令如下。
D:\myJava>javac HelloJava.java
错误: 找不到文件: xxx.java 当前目录下不存在指定的 Java 源文件,或 Java 源文件名错误。 检查 Java 源文件是否存储在当前目录中,或文件名是否错误。
错误: 类 xxx 是公共的, 应在名为 xxx.java 的文件中声明 Java 代码中类的名称和 Java 源文件名称不同。 检查 Java 源文件名称和类名称是否相同。
错误:javac 不是内部或外部命令,也不是可运行的程序或批处理文件 Java 环境变量配置错误。 参考《Java 配置环境变量》,重新配置 Java 的环境变量。
运行
 
错误: 找不到或无法加载主类 xxx 在当前的目录下找不到指定类的字节码(.class)文件。 检查指定类的字节码是否存储在当前目录中,名称是否正确。
错误: 在类 xxx 中找不到 main(String[]) 方法 指定的类中不存在 main() 方法。

检查指定的类中是否存在 main() 方法,拼写是否正确。


添加微信咨询 扫码添加管理员微信 扫码添加管理员微信
微信ID:biancheng_yan