其他链接
主页 官网 社区 论坛
文章目录
- 1. `javac.exe`
- 2. `java.exe`
- 3. `javaw.exe`
- 4.`Java`运行机制
1. javac.exe
Java
编译器,将.java
文件编译成.class
文件,即将源代码文件编译成字节码文件,字节码文件还不是机器能直接运行的文件。javac.exe
编译后得到的.class
文件是二进制指令,但不是机器指令,而是 Java 虚拟机可识别的指令。
2. java.exe
Java
解释器,启动JVM
(Java
虚拟机),将.class
文件一行一行地解释成机器指令执行。(由Java
虚拟机对字节码进行解释和执行)这就是为什么
Java
程序能跨平台运行的原因。无论是在Windows
、Linux
、MAC
等系统上,只要装有相应版本的JVM
,该JVM
就能把.class
文件解释成机器指令执行。实现“一次编译,随处运行”。
3. javaw.exe
主要用于启动基于
GUI
的应用程序。跟java
命令相对的,运行 java 命令时,会出现并保持一个console
窗口,程序中的信息可以通过System.out
在console
内输出,而运行javaw
,开始时会出现console
,当主程序调用之后,console
就会消失。
编译:.java(源代码) ---> .class(字节码)
解释:.class(字节码) ---> 加载并启动JVM(类加载) ---> .class(机器指令)
执行:通过JVM来完成运行输出
4.Java运行机制
- 编写一个
Java
源文件Main.java
。 - 使用
javac Main.java
的命令开启 Java编译器进行编译。 - 编译完成之后,会自动生成一个
Main.class
的字节码文件。 - 使用
java Main
的命令启动Java
虚拟机(JVM
)运行程序,JVM
首先将编译好的字节码文件加载到内存(这个过程称为类加载),它是由类加载器完成的,然后JVM
会通过Java
解析器对加载到内存中的Java
类进行解析执行。 - 执行后会生成计算机可以识别的机器码文件。
- 机器码文件在计算机运行并显示最终的结果。
------- THE END ------- |