關於final關鍵字

2021-07-02 04:26:27 字數 450 閱讀 1864

final只是表示引用不能變,不代表被引用的物件不能改變。

例如:final stringbuffer sb=new stringbuffer("aa");

//這是可以的,他並沒有改變引用,只是改變引用的物件。

sb=new stringbuffer("cc");  

//這是不可以的,他試圖改變引用。

final int a=1;

a=2;  

//這是不可以的,a原來指向常量區的區中的1,後來想指向常量區的2,出現錯誤。

若類中成員屬性用final來修飾,因為final的instant variable沒有預設值,必須在建構函式結束前被賦予乙個值。所以有如下兩種方法來初始化final變數。

final int a = 1;  

//直接初始化

} final int a;

test()

}

關於final關鍵字

注 概念 final關鍵字可以用來修飾類 方法和變數 包括成員變數和區域性變數 final修飾類時,表明這個類不能被繼承。final類中的所有成員方法都會被隱式地指定為final方法 注意 在使用final修飾類的時候,要注意謹慎選擇,除非這個類真的在以後不會用來繼承或者出於安全的考慮,盡量不要將類...

static關鍵字 final 關鍵字

特點 隨著類的載入而載入,也就是說靜態會隨著類的消失而消失,說明他的生命週期最長 靜態變數 static 關鍵字修飾成員變數,使用 類名.變數名 的形式來訪問,也可以使用 例項物件.變數名 的形式來訪問。靜態方法 static 關鍵字修飾成員函式,靜態方法可以使用 類名.方法名 的形式來訪問,也可以...

static關鍵字 final關鍵字

static關鍵字 靜態的 1,特點 可以修飾成員變數,成員方法 隨著類的載入而載入,優先於物件載入 只載入一次,就會一直存在,不再開闢新空間 全域性唯一,全域性共享 可以直接被類名呼叫 靜態只能呼叫靜態,非靜態可以隨意呼叫 總結 1,被static修飾後的特點 全域性共享 可以被類名直接呼叫 載入...