【发布时间】:2016-03-19 06:30:49
【问题描述】:
有没有办法在 java 对象被销毁之前知道??
例如:
A 类{}
我已将它实例化为 new A()。现在我想知道这个对象什么时候会被销毁,并在它被销毁之前做一些操作。
【问题讨论】:
标签: java
有没有办法在 java 对象被销毁之前知道??
例如:
A 类{}
我已将它实例化为 new A()。现在我想知道这个对象什么时候会被销毁,并在它被销毁之前做一些操作。
【问题讨论】:
标签: java
是的,有一种方法,叫做“对象终结”。查看Object.finalize() 方法。但要小心:如果你走那条路,你只会发现痛苦。
【讨论】:
您的意图是非常不推荐的。因为 gc 何时运行以及何时实际调用此方法是完全不可预测的。
然而:
你可以覆盖Object的finalize()方法:
详情请看这里:When is the finalize() method called in Java?
当 gc 确定不再引用特定对象时调用此方法。
【讨论】: