首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

Finalize步骤

2012-10-16 
Finalize方法Finalize()方法只被对象调用一次,而且,就算你执行了System.gc(),对象也不一定就马上执行Final

Finalize方法

Finalize()方法只被对象调用一次,而且,就算你执行了System.gc(),对象也不一定就马上执行Finalize方法。

?

?

public class FinalizeTest {public static FinalizeTest SAVE_OK = null;@Overrideprotected void finalize() throws Throwable {super.finalize();System.out.println("finalize method run");FinalizeTest.SAVE_OK = this;}public static void main(String[] args) throws Exception{SAVE_OK = new FinalizeTest(); //对象引用数为1SAVE_OK = null; //对象引用指数为0System.gc();Thread.sleep(1000); //Finalizer 方法优先级很低,暂停1秒if(SAVE_OK != null){System.out.println("live");}else{System.out.println("dead");}SAVE_OK = null; //对象引用指数为0System.gc();Thread.sleep(1000); //Finalizer 方法优先级很低,暂停1秒if(SAVE_OK != null){System.out.println("live");}else{System.out.println("dead");}}}
output: finalize method runlivedead
?

?

?

热点排行