final與static關鍵字的區別?(skycto JEEditor)

書寫人生發表於2019-09-15

都可以修飾類、方法、成員變數。

static可以修飾類的程式碼塊,final不可以。
static不可以修飾方法內的區域性變數,final可以。
 
static修飾表示靜態或全域性,被修飾的屬性和方法屬於類,可以用類名.靜態屬性 / 方法名 訪問
static修飾的程式碼塊表示靜態程式碼塊,當Java虛擬機器(JVM)載入類時,就會執行該程式碼塊,只會被執行一次
static修飾的屬性,也就是類變數,是在類載入時被建立並進行初始化,只會被建立一次
static修飾的變數可以重新賦值
static方法中不能用this和super關鍵字
static方法必須被實現,而不能是抽象的abstract
static方法只能被static方法覆蓋


final修飾表示常量、一旦建立不可改變
final標記的成員變數必須在宣告的同時賦值,或在該類的構造方法中賦值,不可以重新賦值
final方法不能被子類重寫
final類不能被繼承,沒有子類,final類中的方法預設是final的
final不能用於修飾構造方法
private型別的方法預設是final型別的
————————————————
版權宣告:本文為CSDN博主「ConstXiong」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處連結及本宣告。
原文連結:https://blog.csdn.net/meism5/article/details/89205253


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69947338/viewspace-2657054/,如需轉載,請註明出處,否則將追究法律責任。

相關文章