1. 程式人生 > >三、final、finally、 finalize有什麼不同?

三、final、finally、 finalize有什麼不同?

一、final 不可變

通常用來修飾一個類或者一個方法或者一個變數

1.修飾類的時候,表示這個類是不可以被繼承的。(避免重寫方法,更改一些功能)

2.修飾方法的時候,表示這個方法是不可以被重寫的。(同上)

3.修飾變數的時候,表示這個變數的引用是不可以更改的。(保證變數的值是正確的,避免被亂修改)

二、finally 最後的

通常和try-catch語句塊一起使用,用來確保某些業務處理完之後所進行最後的一一項處理,如關閉資料庫的連線等待。一般情況下會執行。

注意:不一定會執行,比如try中使用了死迴圈while(true)或者提前退出了程式System.exit(1),System.exit(0)。

System.exit(0):正常退出

System.exit(1):非正常退出

三、 finalize 完成的

java.lang.obejct的一個方法,用於物件在被垃圾處理器回收之前,進行一些特定資源的回收。