Effective Java学习笔记之第7条 避免使用终结方法
第7条 避免使用终结方法
终结方法(finalizer)通常是不可预测的,也是很危险地,一般情况下是不必要的。
终结方法的缺点在于不能保证会被及时地执行。
Java语言规范不仅不保证终结方法会被及时地执行,而且根本就不会保证它们会被执行。
使用终结方法有一个非常严重的(server)性能损失。
显示的终止方法通常与try-finally结构结合起来使用,以确保及时终止。
总之,除非是作为安全网,或者是为了终止非关键得本地资源,否则请不要终结方法。