如何销毁java中的对象?

我在接受以下采访时遇到了这个问题:

如何在Java中销毁对象?

a. System.gc();  

b. Runtime.getRuntime.gc();

c. object.delete();

d. object.finalize();

e. Java performs gc by itself, no need to do it manually.

  1. 答案应该是e?

  2. 如果e不在那里怎么办?然后 ?显然,c不是答案。a和b将为整个应用程序执行gc(问题需要一个对象)。我认为这是d,因为finalize()刚好在gc之前被调用(但是是否有必要在finalize gc之后被调用?)还是我错了?您必须在那里回答这个问题吗?

回答:

答案E是正确答案。如果E不存在,您将很快用尽内存(或)没有正确答案。

对象应不可访问,才有资格使用GC。JVM将进行多次扫描,并将对象从一代转移到另一代,以确定GC的资格,并在对象无法访问时释放内存。

以上是 如何销毁java中的对象? 的全部内容, 来源链接: utcz.com/qa/420054.html

回到顶部