static和final幾點總結

2021-08-16 04:29:57 字數 729 閱讀 1617

靜態的意思,用於修飾成員(

成員變數和成員方法

)。隨著類的載入而載入

優先於物件存在

被所有物件所共享

可以直接被類名呼叫

a:靜態成員只能訪問靜態成員。

b:靜態方法中不能有this,super關鍵字。

c:主函式是靜態的 。

a:靜態變數隨著類的載入而載入,隨著類的消失而消失。生命週期最長。

非靜態變數隨著物件的建立而存在,隨著物件的消失而消失。

非靜態變數和物件相關,是所屬於物件的,只能被物件名呼叫。稱為例項(物件)變數。

c:靜態變數儲存於方法區中的靜態區。

非靜態變數儲存於物件的區域,在堆記憶體中。

d:靜態變數的資料被所有的物件共享。

非靜態變數是每個物件特有的資料。

最終的意思。

可以用於修飾類,修飾成員變數,成員方法。

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

b:final修飾的成員方法不能被重寫。

c:final修飾的成員變數是乙個常量。 

final double pi = 3.14;

a:多了乙個關鍵字修飾。

b:變數名大寫。

c:值不能被改變。

注意:用final修飾的變數必須先賦初始值再操作,否則編譯失敗。

Final和static的區別

首先 final 和static 是完全沒有關係的。final 作用 1.final 修飾屬性,表示屬性 只能賦值一次 1 基本型別 值不能被修改 2 引用型別 引用不可以被修改該。如 public final int rows 1 此時變數rows不管在什麼地方引用,都不能被再次賦值。但是,可以先...

static和final的區別

修飾變數 靜態變數隨著類載入時被完成初始化,記憶體只有乙個,且jvm也只會為他分配一次記憶體,所有類共享靜態變數。修飾方法 在類載入的時候就存在,不依賴任何例項。static方法必須實現,不能用abstract修飾。即abstract修飾的方法不可謂static。修飾 塊 在類載入完成之後就會執行靜...

final和static的區別

final可以修飾類 成員方法和變數 成員變數和區域性變數 1.final修飾的類不可以被繼承 2.final修飾的方法不可以被重寫 3.final修飾的變數表示常量,只能被賦值一次 注意 final修飾成員變數時,預設沒有初始值。賦值方法 選擇其中一種 a.宣告時賦值 b.構造方法中賦值 c.塊中...