static修飾符能修飾內部類,方法,變數,**塊。
靜態 成員意味著該成員屬於類級,而不依賴於類的例項,也不依賴於任何乙個類的成員,可以不通過建立類的例項來使用靜態成員。
靜態變數在類被加載入時初始化,乙個類只有乙個靜態變數的記憶體空間,而不會依賴於物件再次分配空間。區域性變數不能被宣告為靜態變數。
靜態方法只能訪問靜態變數(靜態方法沒有this變數)。靜態方法只能被重寫成靜態的,不能被重寫成非靜態的。非靜態方法不能重寫成靜態的。
例子:以下為沒有使用靜態方法的:
public class d
}class parent
int x=100;
public void dostuff()
}class child extends parent
int x=200;
public void dostuff()
}輸出結果為:
parent init~~~
child init~~~
child~!~!~
200parent init~~~
parent~!~!~
100child~!~!~
200parent init~~~
child init~~~
child~!~!~
200child~!~!~
200child~!~!~
200parent init~~~
parent~!~!~
100而當使用靜態方法時:
public class d
}class parent
static int x=100;
public static void dostuff()
}class child extends parent
static int x=200;
public static void dostuff()
}輸出結果為:
parent init~~~
child init~~~
child~!~!~
200parent init~~~
parent~!~!~
100parent~!~!~
100parent init~~~
child init~~~
parent~!~!~
100parent~!~!~
11parent~!~!~
11parent init~~~
parent~!~!~
11
static靜態修飾符
靜態成員歸整個類所有,不依賴類特定的例項,是被類的所有例項共享。只要這個類被jvm載入,就可以根據類名在全域性資料區域內找到它們。因此,靜態成員可以在任何物件建立之前訪問而無需訪問物件。static關鍵字修飾的成員變數稱為靜態成員變數,簡稱靜態變數。靜態變數是屬於類,但是不依賴類特定的例項。靜態變數...
修飾符之static
靜態屬性可以用類名直接訪問,在類載入時就會被初始化到方法區。成員變數在建立物件時初始化 1.靜態方法可以用類名直接呼叫。2.靜態方法中只能訪問類的靜態成員 包括屬性和方法 3.靜態方法中不可以出現this this是指當前物件,而靜態方法裡時沒有當前物件的 注意 1.引用調靜態方法,實際是對引用型別...
static修飾符和特點
static修飾符表示靜態的,可修飾字段 方法 內部類,其修飾的成員屬於類,也就是說static修飾的資源屬於類級別,而不是物件級別 static真正的作用 用來區別字段,方法,內部類,初始化 塊是屬於物件還是類本身 static修飾符的特點 1 static 修飾的成員 字段 方法 隨著所在類的載...