所屬不同
靜態變數屬於類,所以也稱為為類變數
成員變數屬於物件,所以也稱為例項變數(物件變數)
記憶體中位置不同
靜態變數儲存於方法區的靜態區
成員變數儲存於堆記憶體
記憶體出現時間不同
靜態變數隨著類的載入而載入,隨著類的消失而消失
成員變數隨著物件的建立而存在,隨著物件的消失而消失
呼叫不同
靜態變數可以通過類名呼叫,也可以通過物件呼叫
成員變數只能通過物件名呼叫
public static void main(string args) {}
public 被jvm呼叫,訪問許可權足夠大
static 被jvm呼叫,不用建立物件,直接類名訪問
void被jvm呼叫,不需要給jvm返回值
main 乙個通用的名稱,雖然不是關鍵字,但是被jvm識別
string args 以前用於接收鍵盤錄入的
演示案例
成員變數和靜態變數的區別
成員變數和靜態變數的生命週期 成員變數隨著物件的建立而存在,物件 就被釋放。靜態變數隨著類的載入而存在,類消失靜態變數就消失。呼叫方式不同 成員變數只能被物件呼叫 靜態變數可以被物件呼叫,還可以被類名呼叫。別名不同 成員變數也稱為例項變數。靜態變數也成為類變數。資料儲存位置不同 成員變數儲存在堆記憶...
成員變數和靜態變數的區別
成員變數和靜態變數的區別 1,成員變數所屬於物件。所以也稱為例項變數。靜態變數所屬於類。所以也稱為類變數。2,成員變數存在於堆記憶體中。靜態變數存在於方法區中。3,成員變數隨著物件建立而存在。隨著物件被 而消失。靜態變數隨著類的載入而存在。隨著類的消失而消失。4,成員變數只能被物件所呼叫 靜態變數可...
java中靜態變數和成員變數的區別
成員變數在類中,方法外 成員變數 就是類中事物的屬性 成員方法 就是類中的行為 所屬不同 靜態變數屬於類,所以也稱為為類變數 成員變數屬於物件,所以也稱為例項變數 物件變數 在記憶體中位置不同 靜態變數儲存於方法區里的靜態區 成員變數儲存於堆記憶體區 在記憶體中出現的時間不同 靜態變數隨著類的載入而...