static關鍵字
static:靜態的
static修飾成員變數的特點:
1.static 修飾的成員變數是該類所有物件的共享
2.static 修飾的成員變數隨著類的載入就在靜態區中開闢記憶體了,所以優先非靜態成員變數開闢記憶體
3.static 修飾的成員變數可以直接使用類名訪問
看下面的例子:
class student//定義了乙個student類
由執行結過來看當物件的某個屬性被修飾為靜態時 (如本例中的屬性country),則該類的所有物件的這一屬性
都是一樣的值,即static修飾的成員變數是多有物件的共享,所有的物件可以直接使用;然而當修改某乙個對
象的這一屬性值時,則其他物件的也會變為與之相同。
靜態成員變數和非靜態成員變數的區別:
(1).儲存的資料
靜態成員變數儲存的是物件共享的資料
非靜態成員變數儲存的是每個物件特有的資料
(2).儲存位置
靜態成員變數是隨著類的載入就在方法區中開闢記憶體了
非靜態成員變數是隨著物件的建立才在堆中開闢記憶體的
(3).呼叫方式
靜態成員變數可以物件訪問也可以通過類名直接訪問
非靜態成員變數只能通過物件訪問
補充:非靜態成員變數又叫例項成員變數
靜態成員變數又叫類變數
有static修飾的函式叫例項函式
無static修飾的函式叫類函式
注意:非靜態的方法(函式)可以使用靜態和非靜態成員,而靜態的方法只能使用靜態的不能使用非靜態的成員。
Java中static關鍵字
靜態結構的生命週期要早於非靜態結構,同時 也要晚於非靜態結構 執行結果 變數變數值 c2.nation null c2.nation china public void test2 執行結果 輸出china 內容與靜態屬性大體相同 1.靜態方法內只能呼叫本類靜態屬性或靜態方法 2.靜態方法裡面是不能...
java中static關鍵字
一 可修飾成員變數和方法 靜態函式要注意的事項 1.靜態函式可呼叫類名或物件呼叫,而非靜態函式只能使用物件呼叫。2.靜態函式可直接訪問靜態成員,但不能訪問非靜態成員。原因 靜態函式可通過類名直接呼叫,這時可能還未存在非靜態成員,因為其是根據物件生成的。二 執行順序 靜態 塊的執行順序優先於非靜態 塊...
java中static關鍵字
static 方便在沒有建立物件的情況來呼叫 可以用來修飾類的成員方法 成員變數,塊 內部靜態類 靜態匯入包 1 靜態變數 被static修飾的變數叫靜態變數 或類變數 否則為例項變數,靜態變數類載入時分配一次記憶體,可以直接類名訪問 例項變數建立物件時被初始化,存在多個副本,互不影響。2 靜態方法...