1. Object类有一个finalize()方法,所有类都有这个方法。
2.JVM在回收(GC)一个对象时会调用这个对象的finalize()方法。
但是 GC是靠不住的。
3. JVM只有在内存不够用的情况下才会调用GC,调用finalize()方法。如果内存够用,对象不会被GC,finalize()方法不会被调用。
4. 因此程序中应该主动回收资源,而不是在finalize()方法中回收资源。
时间: 2024-10-26 07:38:53
1. Object类有一个finalize()方法,所有类都有这个方法。
2.JVM在回收(GC)一个对象时会调用这个对象的finalize()方法。
但是 GC是靠不住的。
3. JVM只有在内存不够用的情况下才会调用GC,调用finalize()方法。如果内存够用,对象不会被GC,finalize()方法不会被调用。
4. 因此程序中应该主动回收资源,而不是在finalize()方法中回收资源。