你可以将其用作保存外部资源(套接字,文件等)的对象的支持。实现
close()需要调用的方法和文档。
如果发现尚未完成
finalize(),请实施
close()处理。也许有一些东西要转而stderr指出你是在有错误的呼叫者之后进行清理。
在特殊/越野情况下,它可提供额外的安全性。并非每个呼叫者每次都会做正确的
try {} finally {}事情。不幸的是,但在大多数环境中都是如此。
我同意很少需要它。正如评论者所指出的,它带有GC开销。仅在长期运行的应用程序中需要“皮带和吊带”安全性时使用。
从Java 9开始,我
Object.finalize()已经过时了!他们指出,我们
java.lang.ref.Cleaner并
java.lang.ref.PhantomReference作为替代品。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)