现在有一个类,这个类有一个静态属性,长这样:public static A a =new A(); 那么现在来分析,new A()肯定是进 JVM 的堆区,static A a 肯定是进方法区,然后 "=" 是把方法区的 a 与堆区的数据进行一个强引用关联。那么问题来了,方法区的数据一般不会被清理掉(特殊情况除外),那么指向堆内存的数据就会一直在堆中存在,这不就是内存泄露了么?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.