在前一节中,我们成功创建了Java Hello World程序,并学习了如何对其进行编译和运行。现在,让我们进一步了解在编译和运行Java程序时发生了什么,并探讨一些与我们的第一个程序相关的问题。

编译时会发生什么?

编译时,Java文件会被Java编译器处理。这个编译器并不与操作系统直接交互,而是负责将我们编写的Java代码转换为字节码。

1.png

运行时会发生什么?

在运行时,执行以下步骤:

2.png

Classloader:是JVM的子系统,用于加载类文件。

字节码验证器:检查代码片段中是否存在可能违反对象访问权限的非法代码。

解释器:读取字节码流然后执行指令。

Q) 可以用类名以外的名称保存 Java 源文件吗?

是的,如果班级不公开。下图对此进行了解释:

3.jpg

编译:javac Hard.java
执行:java 简单

请注意,我们使用文件名编译代码,但使用类名运行程序。因此,我们可以保存一个Java程序而不是类名。

Q) 一个 java 源文件中可以有多个类吗?

是的,如下图所示:

4.png

标签: java, Java面试题, Java下载, java教程, java技术, Java学习, Java学习教程, Java语言, Java开发, Java入门教程, Java进阶教程, Java高级教程, Java笔试题, Java编程思想