Java 中用什么方法来销毁对象?

56 浏览
0 Comments

Java 中用什么方法来销毁对象?

本问题很难理解。该问题含糊不清、不完整、过于宽泛或是属于修辞问题,目前无法得到合理的答案。如需帮助澄清该问题以便重新开放提问,请访问帮助中心

你能给我一个关于我的问题的例子吗?

admin 更改状态以发布 2023年5月20日
0
0 Comments

Java 对象占用的内存如果不再可访问,可以由虚拟机的垃圾收集器回收。正如其他人所指出的,这是自动的。相比之下,程序的正常操作可能会分配某些必须显式释放的系统资源。原生的屏幕资源就是一个例子。其中一部分相关方法的列表包括以下内容:

java.awt.Component.BltBufferStrategy#dispose() 
java.awt.Component.FlipBufferStrategy#dispose() 
java.awt.CompositeContext#dispose() 
java.awt.Graphics#dispose() 
java.awt.im.InputContext#dispose() 
java.awt.im.spi.InputMethod#dispose() 
java.awt.image.BufferStrategy#dispose() 
java.awt.Image#flush() 
java.awt.PaintContext#dispose() 
java.awt.Window#dispose() 
java.io.InputStream#close()* 
java.io.OutputStream#close()* 
java.sql.Connection#close() 
java.util.Timer#cancel() 
javax.imageio.ImageReader#dispose() 
javax.imageio.ImageWriter#dispose() 
javax.print.StreamPrintService#dispose() 
javax.security.sasl.SaslClient#dispose() 
javax.security.sasl.SaslServer#dispose() 
javax.swing.DebugGraphics#dispose() 
javax.swing.JInternalFrame#dispose() 
org.ietf.jgss.GSSContext#dispose() 
org.ietf.jgss.GSSCredential#dispose() 
* 包括子类
0
0 Comments

抱歉,Java 中没有真正的“free”或“dispose”等效操作。

你能做的最好的事情就是将对象设置为 null(删除引用)。然后显式地告诉垃圾收集器你要去实施“rambo”(在java.lang.Runtime中有相关内容)。

0