JVM——初识JVM

JVM功能

JVM(Java Virtual Machine),即Java虚拟机,其职责是运行Java字节码文件。

其功能主要有三个:

  • 解释和运行:对字节码文件中的指令,实时的解释成机器码,让计算机执行。
  • 内存管理:自动为对象、方法等分配内存;自动的垃圾回收机制,回收不再使用的对象。
  • 即时编译(JIT):对热点代码进行优化,提升执行效率。

Java需要实时解释,主要是为了支持跨平台特性。即同一份字节码文件在不同的平台上,安装不同的JVM,让JVM解释运行,实现跨平台。

JVM家族

image-20250221125124871

JVM的组成

image-20250221125406875 img

类加载器负责将字节码文件加载到内存中,主要会经历加载->连接->实例化这三个阶段。

JVM 定义了 Java 程序运行期间需要使用到的内存区域,简单来说,这块内存区域存放了字节码信息以及程序执行过程的数据,垃圾收集器也会针对运行时数据区进行对象回收的工作。

执行引擎的任务就是将字节码指令解释/编译为对应平台上的本地机器指令。

JVM 会先通过类加载器加载字节码文件,然后将字节码加载到 JVM 的运行时数据区,再通过执行引擎转化为机器码最终交给操作系统执行。