读书笔记:理解JVM内存空间

本文详细介绍了Java虚拟机(JVM)的内存布局,包括方法区、堆(Heap)、新生代、旧生代、本地方法栈、PC寄存器及JVM方法栈的功能与作用。深入探讨了各内存区域的特点及其在程序运行过程中的角色。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

【方法区】存放要加载的类的信息(名称、修饰符等)、类中的静态变量、类中final类型的常量、类中的Field信息、类中的方法信息,方法区域是全局共享的。OutOfMemory。

 

【堆Heap】存储对象实例和数组值,Heap中对象所占用的内存由GC回收。OutOfMemory。

【新生代】大多数new的对象,都从新生代中分配内存;

【旧生代】经过多次垃圾回收仍然存活的对象,如缓存对象,新建的对象也可能在旧生代中分配内存:大对象,大的数组对象。

 

【本地方法栈】用于支持native方法的执行

 

【PC寄存器】每个线程会创建PC寄存器和JVM方法栈。

 

【JVM方法栈】线程私有,当方法运行完毕,其对应的栈帧所占用的内存自动释放;StackOverflowError。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值