黑马程序员技术交流社区

标题: 有关Java中的内存问题? [打印本页]

作者: 奋斗的黑马    时间: 2015-3-24 11:47
标题: 有关Java中的内存问题?
Java的栈内存,堆内存,都可以存放哪些东西?以及栈内存,堆内存存放数据的特点
作者: 黑色救护车    时间: 2015-3-24 12:17
本帖最后由 黑色救护车 于 2015-3-24 13:22 编辑

1)堆内存中存放对象和数组,new出来的对象实例都存储在堆内存中;
2)栈内存中存放变量;
3)堆和栈的区别是, a.堆内存是动态分配的,当你new一个对象的时候,就会在堆内存中动态分配一定的内存;而栈内存中的变量,只要声明,就会开辟一个内存空间; b.栈内存中的变量一旦结束使用,其所占内存自动释放;而堆内存中的对象实例,在使用结束后,会不定时被Java垃圾回收器回收,回收后释放内存。


作者: 圣光忏悔    时间: 2015-3-24 13:02
栈内是各种方法,对象的实际储存地址,当堆跟着main入库走进来碰到对象,方法的时候就会在栈内存中开辟空间存放方法,变量,然后将地址值赋给堆内存中对应的对象,方法名.

所以判断想等的时候==比较的地址值,碰到引用对象的时候需要用到equals方法
作者: 谢鸿    时间: 2015-3-24 13:23
支持一下!!!!
作者: 胡谭龙    时间: 2015-3-24 16:10
多看视频

作者: 奋斗的黑马    时间: 2015-3-24 17:05
都是大侠呀




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