程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> JAVA編程 >> JAVA編程入門知識 >> java中final與finally的使用介紹

java中final與finally的使用介紹

編輯:JAVA編程入門知識

final可以修飾類 ,成員變量,局部變量和方法。

1.final修飾成員變量

1.final成員變量的初始化

對於final修飾的變量,系統不會默認初始化為0

fina變量初始化方式:

  • 在定義的時候初始化
  • final變量可以在初始化塊中初始化,不可以在靜態初始化塊中初始化。
  • 靜態final變量可以在靜態初始化塊中初始化,不可以在初始化塊中初始化。
  • fina變量還可以在構造函數中初始化,但是靜態final變量不可以。

2.final修飾方法

當final用來修飾方法時,表示這個方法不可以被子類覆蓋。

3.final修飾類

  final修飾的列不允許被繼承,編譯器在處理時把它的所有方法都當作final的,因此final類比普通類擁有更高的效率。而由關鍵字abstract定義的抽象列含有必須由繼承自它的子類重載實現的抽象方法,因此無法同時用final和abstract來修飾同一個類。同樣的道理,final也不能用來修飾接口。final的類的方法都不能被重寫。但這並不表示final的類的屬性值也是不可改變的。要想做到final類的屬性值不可改變,必須給他增加final修飾符。

finally語句只能用於try/catch語句中,並且附帶著一個語句塊,表示這段語句最終總是被執行。
代碼如下:

public class Test {
     public static void main(String[] args){
         System.out.println(returnTest());//false
     }
     public static boolean returnTest(){
         try{
             return true;
         }finally{
             return false;
         }
     }
 }

先計算return後面的表達式的值,將值臨時存儲起來,然後計算finally裡的return後的表達式值,算出後也會臨時存儲,
此時就會把之前存儲的值給覆蓋掉。最後,回到前一個return處,從臨時存儲變量的地方把值拿出來,返回。即得到了這樣的結果。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved