黑马程序员技术交流社区

标题: heap 和stack 有什么区别? [打印本页]

作者: 651012160    时间: 2013-12-22 20:30
标题: heap 和stack 有什么区别?
本帖最后由 651012160 于 2013-12-22 20:56 编辑

请问heap 和stack 有什么区别?{:soso__3110130392203091378_3:}

作者: 于磊    时间: 2013-12-22 20:51
heap就是堆,stack 就是栈。当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间。堆内存用于存放由new创建的对象和数组。这也是两者的区别,通俗地讲,栈是存放函数调用过程中的临时变量的! 堆是程序运行过程中动态申请的内存的存放处的!
作者: 651012160    时间: 2013-12-22 20:56
于磊 发表于 2013-12-22 20:51
heap就是堆,stack 就是栈。当在一段代码块中定义一个变量时,java就在栈中为这个变量分配内存空间。堆内存 ...

栈是一种线形集合,其添加和删除元素的操作应在同一段完成。栈按照后进先出的方式进行处理。堆是栈的一个组成元素。谢谢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2