黑马程序员技术交流社区
标题:
java中堆和栈的区别
[打印本页]
作者:
mars_b0ZZ0
时间:
2015-5-19 01:12
标题:
java中堆和栈的区别
本帖最后由 mars_b0ZZ0 于 2015-5-19 21:25 编辑
java中 堆和栈的区别:)
作者:
想要那片海
时间:
2015-5-19 08:11
堆存储的是对象,栈存储的是变量,变量在使用完以后会在栈内存中释放内存,但是如果变量解除了与堆内存中的对象的引用关系,对象不会再内存中马上释放内存,会等待java的垃圾回收机制将其清理掉
作者:
枕寒流
时间:
2015-5-19 08:15
ls回答的不错,,,,
作者:
L番茄X
时间:
2015-5-19 08:19
新new 出来的都会在堆空间.
作者:
晚风吹舟行
时间:
2015-5-19 08:57
堆是储存对象,而栈是储存临时变量和局部变量的
作者:
guojiadui
时间:
2015-5-19 09:12
每次看回复都能学到不少
作者:
sxsxsx
时间:
2015-5-19 09:58
学习学习
作者:
冷雨敲窗被未温
时间:
2015-5-19 10:32
别人的回复就是我们学习的资料
作者:
xmmsbb
时间:
2015-5-19 17:25
堆是用于储存对象的,释放空间是有垃圾处理机制随机完成的;栈是储存方法的,方法执行完就释放空间
作者:
Mr7952
时间:
2015-5-19 18:50
沙发说的很是清楚啊
作者:
LoseMyCat
时间:
2015-5-19 18:55
JVM中栈是线程私有的,栈中保存着一系列的栈帧,一个栈帧中保存着一个方法执行过程中变量的信息、操作数的信息、返回值地址等。
堆主要是用来存储对象的。你new的对象都放在堆上(静态变量、静态引用、类对象等除外,他们存放在方法区)。另外Java有一套垃圾回收的算法,会通过可达性分析来找出不可用对象,然后通过GC工具进行垃圾清除和内存的回收。
作者:
zq19910303
时间:
2015-5-19 18:56
受教了,这个知识点差不多能理清楚了
作者:
Always,
时间:
2015-5-19 19:03
学习中。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2