关于java:Java从零开始4第一个-Java-程序

41次阅读

共计 2315 个字符,预计需要花费 6 分钟才能阅读完成。

1. 编译程序

大家可能有个疑难,为什么须要编译程序呢?计算机不能间接执行咱们编写的源代码吗?

这是因为计算机只能辨认由 0 和 1 组成的二进制代码。须要通过编译将源代码转换为计算机意识的二进制代码。

1.1 Java 中的编译

在 Java 中,程序不是间接被编译为可执行文件,而是被编译为 字节码 文件,JVM(Java 虚拟机)在运行时执行字节码文件。当咱们应用 javac 编译器时,Java 源代码文件被编译为字节码文件,字节码文件以扩展名 .class 的模式保留在磁盘上。当程序运行时,字节码文件将被转换为机器代码,并在内存中执行。

总的来说,Java 源代码须要被“转换”两次能力被计算机执行:

  1. Java 源代码被编译为字节码:由 javac 前端编译器实现;
  2. 字节码被编译为机器码:由 JVM 的执行引擎实现。

下图形容了一个 Java 程序从 编写 编译 ,再到 执行 的步骤:

1.2 疾速执行一个程序

1.2.1 筹备工作

为了确保咱们人生中第一个 Java 程序可能顺利执行,请首先确认你曾经实现了上面两件事件:

  1. 曾经在你的电脑上胜利装置 JDK
  2. 有一个文本编辑器。(如 Windows 的记事本,Unix 的 vim)。

1.2.2 编写源代码

新建一个文本,输出如下内容,将其命名为 HelloWorld.java并保留

实例演示

预览 复制

复制胜利!

public class HelloWorld {public static void main(String[] args) {System.out.println("Hello World!");
    }
}

Tips

  • 文件名必须与 类名 同名(类名 就是下面第一行代码中 class 前面的HelloWorld),并且扩大名为 .java,文件名和类名都辨别大小写,所以请确保文件名和类名大小写保持一致;
  • 类的命名约定以大写字母结尾;
  • 上述代码中的所有符号,请应用英文半角;
  • 别疏忽了代码第三行结尾的 分号;

上面为实操中的截图。

关上记事本,输出源代码:

点击 文件 -> 保留 ,将文件保留到磁盘(此处保留在桌面上),留神:这里要将文件名命名为HelloWorld.java,保留类型抉择 所有文件,编码抉择UTF-8

1.2.3 编译后执行

当初,关上你罕用的命令行工具。(如 Windows 上的 命令提示符 、MacOS 上的 终端),并进入你刚刚保留 Java 源代码的目录。

Windows 搜寻栏中输出 cmd 即可关上:

应用 cd 命令,进入到咱们刚刚保留源代码的目录(即进入到桌面目录 cd Desktop),应用dir 命令,查看目录下内容:

应用 javac 命令编译源代码:

javac HelloWorld.java

执行编译命令后,你会发现同一目录下会生成一个 HelloWorld.class 文件,这个 HelloWorld.class 就是咱们说的 字节码 文件。接下来就是通过 JVM 执行字节码文件了,输出上面的命令:

java HelloWorld

如果一切正常,你会看到屏幕上输入如下内容:

恭喜你!胜利执行了第一个 Java 程序!

Tips

  • javac 是编译器,而 java 是虚拟机,先应用 javac 编译器编译源代码,再应用 java 虚拟机执行字节码文件。这就是咱们下面提到的 java 源代码被转换两次到执行的过程。
  • java 命令前面的 参数是类名 。换句话说,咱们只须要给虚拟机 传递类名作为参数 即可,虚构机会主动查找对应的以 .class 为扩展名的文件并且执行。

2. 了解程序

咱们当初对下面的 HelloWorld.java 代码进行解析:

public class HelloWorld {...}

这段代码示意咱们定义了一个 公开类,类名为 HelloWorld,依照约定类名首字母要大写。

public 示意这个类是 公开的 (至于什么是公开的,咱们前面再讲),class 顾名思义,就是 publicclass都是 Java 中的 关键字,必须小写。花括号{} 两头为类的定义。

上面咱们来看下花括号两头的 main()办法代码:

    public static void main(String[] args) {...}

这段代码示意咱们定义了一个入口办法,留神:入口办法 是 Java 程序执行的终点。

publicstatic别离示意办法是公开的、动态的,void是办法的返回类型,main前面的括号 () 用来将办法的参数括起来,String[] 是参数的类型,args是参数的名称。
当然,刚刚对于代码的解释略显生涩,作为初学者无需深究每一项的含意。但有一个点请务必牢记:Java 规定,某个类定义的 public static void main(String[] args) 是 Java 程序的固定入口办法。

在办法外部,有一行代码:

        System.out.println("Hello World!");

这行代码的意义就是将 Hello World 这一串字符打印在屏幕上。你能够尝试批改这块内容,将代码中的Hello World!,替换为其余内容,例如:

public class HelloWorld {public static void main(String[] args) {System.out.println("Hello zzz!");
    }
}

保留源代码,关上命令行,从新编译执行,屏幕上输入的内容将会被胜利替换。

3. 小结

本大节咱们一起实现了第一个 Java 程序的执行,在这个过程中,咱们理解了编译相干的常识,晓得了应用 javac命令,能够将一个 .java 扩展名的源代码文件编译成 .class 扩展名的字节码文件,应用 java 命令,能够执行字节码文件。咱们也对程序的根底语法有了大抵的理解。如果你对程序的了解还有困惑,也不用放心,在前面的章节中,咱们将具体学习 Java 的根底语法,随着常识的累积,你也将更加熟能生巧地浏览、编写程序。

微信公众号

正文完
 0