是否有一个在销毁时调用的类方法?
在课堂上使用new
时,系统会调用initialize
方法,是否有destroy
个等效方法?
当不再使用类时,我需要确保数据库正确关闭(程序在数据库关闭后继续运行)。
答案 0 :(得分:5)
有Object#finalize,但是通常只需要这样的析构函数来进行低级抽象,例如从C库中释放资源。对于普通的应用程序或库代码,我认为这是代码味道,通常有更好的解决方案。
如果数据库连接仅用于特定交互,则最好手动打开和关闭(可能包含在块中)连接,而不是依赖于GC析构函数挂钩。