Java中类似于delphi的析构函数是什么? (23分)

  • 主题发起人 主题发起人 djh_djh
  • 开始时间 开始时间
D

djh_djh

Unregistered / Unconfirmed
GUEST, unregistred user!
Java中类似于c++的析构函数是什么?
我要在类析构时做一件事, 如何实现

 
JAVA好象没有西构函数啊:

!!
不用大家管的
 
java自动回收内存
 
但是我要在该对象析构时,
关闭数据库连接如何做
 
老兄,java支持内存自动回收的,没有析构函数的。
 
有没有方法在对象被回收时执行
 
好像有个finalsize什么的函数可以覆盖,但是jdk并不保证一定会在析构对象时
调用它。
像你这种情况,你应该在程序中显示的释放资源,而不是依赖于jdk的自动析构。
简单的说,你完全可以自己提供一个拟析构函数,然后自己显示的调用,在这个
拟析构函数中自行释放资源,这样,你的程序逻辑就与c++没有什么区别了。
区别只在于,你的拟析构函数并不真正的释放对象,对象真正被释放交给jdk去
关心。但实际上,你完全可以认为在你显示调用拟析构函数后,对象已经被释放了。
 
有!对象的finalize()方法是在对象被释放前调用!
System.gc() ;//强制垃圾回收器来释放这些对象的内存
System.runFinalizersOnExit()
//System.runFinalizersOnExit() 方法并不立即试图启动垃圾回收器。
//而是当应用程序退出时,它调用每个对象的finalize() 方法。
 
多人接受答案了。
 
后退
顶部