计算机内存的组织方式

  计算机使用内存来容纳要执行的程序以及这些程序使用的数据。

  操作系统和“运行时”通常将用于容纳数据的内存划分为两个独立的区域,每个区域都一不同的方式管理,这两个区域通常称为栈和堆。栈和堆的设计目标完全不同。

  调用方法时,它的参数和局部变量所需的内存总是从栈中获取。方法结束后,要不正常返回,要不就抛出异常,所以为参数和局部变量分配的内存将自动归还给栈,并可在另一个方法调用时重新使用。栈上的方法参数和局部变量都具有良好的定义的生存期,方法开始时进入生存期,方法结束时结束生存期。

  使用new关键字创建对象时,构造对象所需要的内存总是从堆中获取,使用引用变量,可以从多个地方引用同一个对象。使用new关键字将创建对象,但只有在删除了最后一个对象应用之后的某个不确定时刻,它才会消失。

  栈(stack)内存就像一系列堆得越来越高的箱子,调用方法时,它的每个参数都是被放入一个箱子,并将这个箱子放到栈的顶部。每个局部变量也同样分配到一个箱子,并同样放到栈顶。

  堆(heap)内存则像散布在房间里的一大堆箱子。

 

转载于:https://www.cnblogs.com/hjxzjp/p/7892698.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值