黑马程序员技术交流社区

标题: 关于成员变量在内存中的生命周期问题? [打印本页]

作者: 李成航    时间: 2012-3-22 11:30
标题: 关于成员变量在内存中的生命周期问题?
我们知道局部变量跟方法一起在栈上,它随着方法同生共死。那成员变量在内存的堆上,它什么时候产生?什么时候灭亡呢?
作者: 杨朝辉    时间: 2012-3-22 11:34
非静态成员变量随着对象的创建而产生,静态成员变量随着类的加载而产生。当一个对象不再被引用时,垃圾回收器在不定时自动释放该对象,这时非静态成员变量就消亡了。
作者: 杨波    时间: 2012-3-22 12:35
堆内存用于存放用new创建的对象和数组,所以成员变量应该是关键字new声明之后产生;当没有引用变量指向它的时候,会被回收,也就灭亡了。
作者: 刘元明    时间: 2012-3-22 12:55
成员变量是随着对象在堆内存的创建而建立,当一个对象不再被使用时,相应的成员变量也就会被堆内存的垃圾回收机制清理掉,
但这里的垃圾回收机制是不定时的回收,所以没有准确的时间定位




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