黑马程序员技术交流社区

标题: 关于内存泄露的问题 [打印本页]

作者: 徐帅    时间: 2013-1-22 11:58
标题: 关于内存泄露的问题
在张老师的视频中提到了:
   如果是一个Hash集合,每次存入删除等操作,都会通过hashcode方法,所以如果修改了某个元素的属性,
   这样在删除该元素的时候,是无法删除的,因为它们已经所属不同的内存块,所以会导致内存泄露,我想问,
   既然java中比较自豪的就是垃圾回收器,那么java机制会不会意识到这一点,进行垃圾回收呢,或者通过其
   他的方式进行处理呢,或者就真的导致内存泄露的大问题 ?

  谢谢各位啦!

作者: 黄锦成    时间: 2013-1-22 12:29
没那么智能。这个要自己在编码的时候来避免了
作者: 黑马刘杰    时间: 2013-1-22 13:13
java的垃圾回收机制就是JVM在空闲时间以不定时的方式动态回收无任何引用的对象占据的内存空间。
我的理解是如果这个对象没有任何引用了,他所占用的内存空间就会在一个不确定的时间被释放掉。而当我们修改了hashcode后,对象还会存在于集合中,并不是没有程序引用它了,但是我们也找不到它了。
这样子就造成内存溢出了。
作者: caozhenbinhm    时间: 2015-11-25 00:42
不清楚ia~~~~~~~~




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