---
url: /notes/面试/java-虚拟机/index.md
---
\[TOC]

## JVM组成部分

[JVM 由哪些部分组成？ - Java 虚拟机面试题 - 面试鸭 - 程序员求职面试刷题神器](https://www.mianshiya.com/bank/1789931432793948162/question/1854787878122102785#heading-0)

Java虚拟机是一个允许Java程序的虚拟环境，负责将Java字节码转换为机器码并执行

1. 准备好编译的Java字节码文件(.class文件)
2. 通过（**类加载器**）将class文件加载到内存中（**运行时数据区**）
3. 字节码是JVM定义的指令集规范，底层操作系统无法直接执行，需要特定的命令解析器（**执行引擎**）将字节码翻译成特定的操作系统指令集交给CPU去执行
4. 这个过程会需要调用一些不同语言为Java提供的接口（**本地方法接口**）
