static靜態字段,靜態方法,靜態**塊
壹
簡介
一些場景下會要求乙個類的多個例項共享乙個成員變數;有時候想定義一些不和具體物件關聯、不需要new就呼叫的方法
舉例:console類的writeline,messagebox的show。這個時候就要使用靜態。
所謂靜態方法、靜態成員是類的方法、類的成員,他不歸屬於任何乙個物件。因此不用new出來,直接型別.靜態方法()就能用了。
貳
特徵1、static變數不需要new就可以直接通過類名呼叫。static變數是共享的記憶體空間,非static變數則是物件隔離的。
2、static 方法中無法使用this關鍵字,因為static獨立於物件存在,不是任何人的唯一。
3、static成員中只能訪問static成員,不能直接訪問非static成員。非static成員可以訪問static成員。
叄
靜態**塊
1. 示例
class
mytest
public
mytest()
}
mytest t1 =
new
mytest();
mytest t2 =
new
mytest();
2. 說明
1.靜態**塊,
在類第一次被使用的時候執行一次,只要用到類,哪怕沒new物件(比如只是宣告變數)也會被執行,且只執行一次。
2.靜態**塊
,在建構函式執行之前執行。
3. 試題
public
class
myjingtaidaimakuai
public
myjingtaidaimakuai()
public
static
int
test1()
public
static
int
test2()
}
myjingtaidaimakuai a1 =
new
myjingtaidaimakuai();
console.writeline(a1.age);
myjingtaidaimakuai a2 =
new
myjingtaidaimakuai();
console.writeline(a2.age);
/* 對以上**描述如下
*//*
* 1.只要接觸類,最先執行的是類中的靜態的成員變數。
* 2.其次執行的是靜態**塊。
* 3.靜態成員變數的宣告和定義僅在首次載入的時候執行一次。
* 4.「動態」成員變數在建構函式之前執行。
* 5.「動態
」成員變數在每次例項化物件時候都執行。
*/
不知道不知道
函式分析 希爾伯特 哥德爾不完備定理 哥德爾不完全性定理一舉粉碎了數學家兩千年來的信念。他告訴我們,真與可證是兩個概念。可證的一定是真的,但真的不一定可證。某種意義上,悖論的陰影將永遠伴隨著我們。無怪乎大數學家外爾發出這樣的感嘆 上帝是存在的,因為數學無疑是相容的 魔鬼也是存在的,因為我們不能證明這...
不知道不知道
函式分析 希爾伯特 哥德爾不完備定理 哥德爾不完全性定理一舉粉碎了數學家兩千年來的信念。他告訴我們,真與可證是兩個概念。可證的一定是真的,但真的不一定可證。某種意義上,悖論的陰影將永遠伴隨著我們。無怪乎大數學家外爾發出這樣的感嘆 上帝是存在的,因為數學無疑是相容的 魔鬼也是存在的,因為我們不能證明這...
你不知道的 和
開發中,編寫有一定逼格的 是每個程式猿都追求的。經常用來判斷的符號 和 也經常用來定義變數哦,你知道嗎?邏輯與 在有乙個運算元不是布林值的情況下,就不一定返回布林值。比如以下情況 1 第乙個運算元是物件,返回第二個數 var myinfo console.log myinfo 2 輸出22 第二個運...