JVM-内存

JVM中,内存分为stack和heap。
1. stack是jvm的内存指令区。管理简单,速度快,每次push或pop定长的数据或指令。java基本类型,指令代码,常量都保存在stack。由于Stack的内存管理是顺序分配的,而且定长,不存在内存回收问题
2. heap是jvm的内存数据区。管理复杂,每次分配不定长内存空间保存对象的实例,实际保存对象实例的属性值,属性类型和对象本身的类型标记,并不保存对象方法,因为方法是指令,保存在stack中。在heap中为对象实例分配好内存后,需要在stack中保存一个4Byte的heap内存地址,用来定位对象实例在heap中的位置,便于查找。Heap 则是随机分配内存,不定长度,存在内存分配和回收的问题
[img]http://dl.iteye.com/upload/attachment/0071/9287/23ad7f73-a3a3-3104-a8e6-d5739286b63a.png[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值