JVM基础思维导图(持续更新中)
JVM
JVM内部构造
字节码执行引擎
- 任务就是将字节码指令编译为对应平台上的本地机器指令执行
JVM内存模型
内部关系
-
程序计数器
-
存在位置:每个线程都占有的独立的内存区域中,都有一部分区域用来放该线程的程序计数器
- .class文件 (java -c 得到)
-
字节码文件中,每个方法对应的解析后内容
Code: 0 - n 就是我们想要的那个执行位置
(行数)
- 用处:用于记录当前线程正在执行的代码的位置(行号)
- 存在原因:假如CPU执行该线程到一半去干别的活,当前线程被挂起,那么就需要知道被插队前执行到哪了,以方便CPU回来干活后能从上一个记录点继续
- 数值变化:每运行完一行,程序计数器存放的值会被字节码执行引擎修改
-
方法区(元空间,永久代)
- 存放内容:
常量,静态变量,类信息
- 存放内容: