首页 > 其他 > 详细

简述程序中的内存

时间:2019-08-14 19:44:26      阅读:83      评论:0      收藏:0      [点我收藏+]

程序内存的动态改变部分可以分成两个区:

栈(stack)(FILO 先进后出):内存总是向一个方向增加或向相反方向减少,这个内存区用于存放方法或块中声明的局部变量。遇到局部变量声明时(包括调用方法中的变元变量-通C中的形参)内存增长,退出方法或块时这些变量弹出堆栈。

堆(heap)(FIFO 先进先出):用于存储对象,对象的引用放在堆栈区,但是对象的数据区必须存放在堆中。堆是内存单元构成的一个巨大的表。New语句生成新对象时,保留的小块内存单元随时进行分配,一个内存单元块不再被现有变量引用时,这些不用的单元被释放和收集起来。

堆内存存放的有:String、基本数据类型、对象引用、static静态代码块等

栈内存存放的有:StringBuffer、对象等

简述程序中的内存

原文:https://www.cnblogs.com/ltg1024/p/11354210.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!