通過static宣告的屬性或者方法可以通過類名稱直接呼叫
static方法只能呼叫static屬性或者方法,不能呼叫非static屬性或者方法
非static方法則不受限,可以任意呼叫static宣告的屬性或者方法
注意:main方法本身就是乙個static方法
示例1:static方法呼叫非static和static屬性
public class statictest}
public class statictest則會正常執行}
示例2:static方法呼叫非static方法和static方法
public class statictestpublic void
norfun()
}
public class statictest可以正常編譯public static void
norfun()
}
示例三:普通方法呼叫static屬性和方法
public class statictest會發現編譯正常通過public static void
staticfun()
public void
norfun()
}
原因:記憶體可以分為四部分,棧記憶體、堆記憶體、全域性資料區、全域性**區,static儲存在全域性資料區,所有的非static定義的結構必須是產生了例項化物件才會分配空間然後使用,而static定義的結構不受例項化物件的控制,可以在沒有例項化物件的時候進行訪問
java基礎 static關鍵字
static 關鍵字 可以用於修飾屬性,也可以用於修飾方法,還可以用於修飾類 static 修飾屬性 無論乙個類生成了多少個物件,所有這些物件共同使用唯 一乙份靜態的成員變數 乙個物件對該靜態成員變數進行了修改,其他物件 的該靜態成員變數的值也會隨之發生變化。如果乙個成員變數是 static 的,那...
java基礎 static關鍵字
一 概述 static 關鍵字是宣告靜態變數,靜態方法用的。static的含義是屬於類且不屬於類物件的變數和函式。二 static的產生。在建立物件的時候除非用new建立那個類的物件,否則實際上並沒有獲得任何物件只有當執行new來建立物件時資料儲存空間才被分配,其方法才供外界呼叫。但是有兩種情況上述...
java 基礎static關鍵字
當我們寫方法或者宣告變數的時候,有什麼就會用到static關鍵字,但是static什麼意思呢?代表什麼呢?1.static首先是靜態的意思,當它修飾方法或者變數的時候,就表示這個方法或者變數就是靜態的,1 靜態的方法和變數是屬於類的而不是物件的,換句話說,靜態方法和變數可以直接用類名 點 出來,如果...