介绍 Java 的内存泄漏

如何预防内存泄漏?

如下是一些预防内存泄漏的快速技巧:

1、留意集合类,比如HashMap,ArrayList等等,因为他们是内存泄漏经常发生的地方。当它们被声明为静态对象时,他们的生命周期就和应用的生命周期一样长。

2、留意事件监听器和回调。如果一个类注册了监听器,但当该类不再被使用后没有注销监听器,可能会发生内存泄漏。

3、“如果一个类管理自己的内存,程序员应该警惕内存泄漏。”[1],很多时候对象中的指向其他对象成员变量需要设置成null(才能被回收)。

一个小测验:为什么JDK6中的substring()方法会引发内存泄漏?

要回答这个问题,你可能需要查看JDK6和7中substring()的源码。

参考文献:1. Bloch, Joshua. Effective java. Addison-Wesley Professional, 2008.2. IBM Developer Work.http://www.ibm.com/developerworks/library/j-leaks/

然后继续努力,把让自己跌倒的石头搬掉或绕过去,不就解决问题了吗?

介绍 Java 的内存泄漏

相关文章:

你感兴趣的文章:

标签云: