【Java語言基礎】final關鍵字

【Java語言基礎】final關鍵字

修飾詞:final 最終的最後的
final關鍵字可用於修飾符,變量和方法,用於表示它修飾的類,方法和方法不可改變。

final 最終的最後的
final修飾變量時,表示該變量一旦獲得了初始值之後就不可被改變,final既可修飾成員變量(包括類變量和實例變量),也可以修飾局部變量,形參。
final修飾成員變量

  • 類變量:當類初始化時,系統會爲類變量分配內存,並賦默認值。
  • 實例變量:當創建對象時,系統會爲該對象的實例屬性分配內存,並賦默認值。

final修飾局部變量

  • 可以在定義時指定默認值,則後面代碼中不能再對改變量賦值。
  • 如果在定義時沒有指定默認值,則可以在後面代碼中對final變量賦初始值,但是隻能一次,不能重複賦值。

final修飾類變量,實例變量能指定初始值的地方如下:

  • 類變量:靜態初始化塊或聲明該屬性時指定初始值。
  • 實例變量:非靜態初始化塊,聲明該屬性時或構造方法種指定初始值。

注意:實例屬性不能在靜態初始化塊種指定初始值,因爲靜態初始化塊是靜態成員,不可訪問實例屬性——非靜態成員;類屬性不能在普通初始化塊種指定初始值,因爲類屬性在類初始化階段已經被初始化了,普通初始化不能對其重新賦值。

總結:

  1. 修飾類:final修飾的類不能被繼承。

  2. 修飾成員變量:可以直接初始化,也可以在構造器中初始化,除了以上兩種情況不能在其他任何地方再次賦值,只可賦值一次。

  3. 修飾局部變量:只能初始化一次。

  4. 修飾方法:被final修飾的方法,不能在子類中重寫,但是可以在子類中使用。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章