http://blog.youkuaiyun.com/omyrobin/article/details/78886178
这篇文章是我转载的关于java对象生命周期的文章,里面描述了java对象从创建到回收的几个不同阶段。
6.终结阶段
当对象执行完finalize()方法后仍然处于不可达状态时,则该对象进入终结阶段。在该阶段是等待垃圾回收器对该对象空间进行回收。
所以我们可以让Activity重写finalize()方法然后在方法中使用Log进行打印输出,输出什么都可以,然后当我们关闭该Activity时,使用IDE点击启动GC进行对象的回收工作,如果可以正常打印输出,说明Activity进入了终结阶段,那么就说明Activity没有存在被其他对象引用的情况,可以进行回收,如果没能打印那么就说明,可能出现内存泄漏了,所以赶紧排查这个Activity吧,当然解决了之后要记得将重写finalize()方法从代码中删掉,不然会增加回收的难度的。