靜態變數和成員變數的區別

2021-10-05 06:35:04 字數 571 閱讀 6032

所屬不同

靜態變數屬於類,所以也稱為為類變數

成員變數屬於物件,所以也稱為例項變數(物件變數)

記憶體中位置不同

靜態變數儲存於方法區的靜態區

成員變數儲存於堆記憶體

記憶體出現時間不同

靜態變數隨著類的載入而載入,隨著類的消失而消失

成員變數隨著物件的建立而存在,隨著物件的消失而消失

呼叫不同

靜態變數可以通過類名呼叫,也可以通過物件呼叫

成員變數只能通過物件名呼叫

public static void main(string args) {}

public 被jvm呼叫,訪問許可權足夠大

static 被jvm呼叫,不用建立物件,直接類名訪問

void被jvm呼叫,不需要給jvm返回值

main 乙個通用的名稱,雖然不是關鍵字,但是被jvm識別

string args 以前用於接收鍵盤錄入的

演示案例

成員變數和靜態變數的區別

成員變數和靜態變數的生命週期 成員變數隨著物件的建立而存在,物件 就被釋放。靜態變數隨著類的載入而存在,類消失靜態變數就消失。呼叫方式不同 成員變數只能被物件呼叫 靜態變數可以被物件呼叫,還可以被類名呼叫。別名不同 成員變數也稱為例項變數。靜態變數也成為類變數。資料儲存位置不同 成員變數儲存在堆記憶...

成員變數和靜態變數的區別

成員變數和靜態變數的區別 1,成員變數所屬於物件。所以也稱為例項變數。靜態變數所屬於類。所以也稱為類變數。2,成員變數存在於堆記憶體中。靜態變數存在於方法區中。3,成員變數隨著物件建立而存在。隨著物件被 而消失。靜態變數隨著類的載入而存在。隨著類的消失而消失。4,成員變數只能被物件所呼叫 靜態變數可...

java中靜態變數和成員變數的區別

成員變數在類中,方法外 成員變數 就是類中事物的屬性 成員方法 就是類中的行為 所屬不同 靜態變數屬於類,所以也稱為為類變數 成員變數屬於物件,所以也稱為例項變數 物件變數 在記憶體中位置不同 靜態變數儲存於方法區里的靜態區 成員變數儲存於堆記憶體區 在記憶體中出現的時間不同 靜態變數隨著類的載入而...