Java中static的分析

2021-08-22 02:23:46 字數 739 閱讀 7260

static關鍵字:

1.寫乙個學生的類,區別特有資料(飛靜態變數)和共享資料(靜態變數)

2.根據這個類分析static記憶體情況

3.static的注意事項

4.static的應用場景

/*

學生類的屬性:姓名,年齡,班級

分析: 當new多個學生的物件時,會在堆記憶體中開闢多塊空間,裡面每乙個物件有姓名,年齡,班級

當然姓名,年齡每個人是不同的,但是乙個班的學生的班級都是一樣的,這樣就浪費了許多空間,

每一塊空間中都建立了相同的變數---------------所以我們引入了static,宣告班級變數時加上

static就變成了靜態變數(共享資料),這樣的變數是共享變數,在記憶體中的方法區中

3. 靜態方法只能呼叫靜態,不能呼叫非靜態(否則會報錯)

理解:生命週期:靜態隨著類載入而存在,這時還沒有物件所以不能呼叫非靜態

this和super不能用

靜態的生命週期隨著類載入而存在,類消失而消失(生命週期較長)

4.應用場景:跟著非靜態變數走,呼叫非靜態變數了不能是靜態方法

沒呼叫非靜態方法可以是靜態方法也可以是非靜態方法

了解Java中的Static

class person string name double money 如果我們有10個人,每個人錢包,裡面有5元錢。person 張三 new person 張三花掉5元錢後,自己的錢包就沒有錢了,而其它9個人的錢都沒有發生變化,因為個人都有自己的錢包。class person string ...

JAVA中static的用法

1.類中的static變數在類載入時首先被初始化,且只能初始化一次.2.所有物件共享類中的static變數.3.在建立子類的物件時,先初始化父類的static變數,再初始化子類的static.例項如下 輸出結果為 i m in class a s static i m in class b s st...

java中的static用法

static只修飾類的成員,包括方法和屬性以及 塊,不能修飾區域性變數。static修飾的方法,屬性以及 塊的特點 1,隨著類的載入而載入 2,它屬於類,所有類的物件共享該靜態成員 3,優先於物件存在 4,可以直接用類訪問 static成員的優點 共享資料,可以節省空間 static成員的缺點 生命...