JVM内存模型

80 阅读1分钟

jvm内存包括:本地方法栈(记录native方法的栈),虚拟机栈(记录java方法的栈),程序计数器,方法区(包括),堆。

线程私有

栈:navtive方法的

本地方法栈 :java方法运行时的局部变量,参数,返回值

程序计数器:主要功能就是记录当前线程执行到哪一行指令,若当前执行的是Java方法,则记录的就是当前执行指令的地址,若是native方法,则为空

线程共享

堆:类的实例对象

方法区:运行时常量池和字符串常量池 jdk1.6的时候,两者都是属于方法区,1.7开 始,字符串常量池被移到了堆内存;运行时常量池用于存放编译期生成的各种常量 (“abc”,123等)和符号引用

具体的如下图

TODO:类加载机制 3e608324602f4457b14f4adbeb07d15c.png