java的static關鍵字的學習

2021-09-16 14:21:02 字數 980 閱讀 1126

再次複習static關鍵字有以下總結:

1、static可以修飾變數、方法和語句塊;

2、static修飾的變數叫靜態變數,修飾的方法叫靜態方法;

3、static修飾的變數和方法可以不用初始化直接被呼叫。

4、如果乙個類裡有靜態變數,則不管這個類被初始化了多少次,其中的靜態變數只能儲存乙個值,並且是最後乙個值。

如:

student s1 = new student();

student s2 = new student();

s1.name = "張三"; //name不是靜態變數

s2.name = "李四";

s1.school = "第七中學"; //school是靜態變數

system.out.println(s1.school); //輸出"第七中學"

s2.school = "聖約翰教會中學";

system.out.println(s1.name); //輸出"張三"

system.out.println(s2.name); //輸出"李四"

system.out.println(s1.school); //輸出"聖約翰教會中學"

system.out.println(s2.school); //輸出"聖約翰教會中學"

//最後兩行輸出語句都是輸出 "聖約翰教會中學" 。

從上面的例子看出來,靜態變數school,被new了2次,在記憶體裡都只有乙個位址,只能存乙個值,所以新的賦值「」聖約翰教會中學「」覆蓋了原值「第七中學」,以後的訪問都只能取到新值。

而如果school在類裡已經定義了值「九中」,可以無需初始化(new)就取到值,象這樣操作:

student.school;這樣就可以取到school的值「九中」了。

5、同樣類中定義的靜態方法也可以直接使用而無需初始化。

如:student.study();

static關鍵字 java關鍵字

先按照宣告順序初始化基類靜態變數和靜態 塊,接著按照宣告順序初始化子類靜態變數和靜態 塊,而後按照宣告順序初始化基類普通變數和普通 塊,然後執行基類建構函式,接著按照宣告順序初始化子類普通變數和普通 塊,最後執行子類建構函式。import static com.test.test1.fu.say i...

Java的static關鍵字

基本概念static關鍵字可以修飾成員變數和成員方法表示隸屬於類層級,推薦使用類名.的方式 使用方式 1 對於非靜態的成員方法來說,既可以訪問非靜態的成員也可以訪問靜態的成員。成員 成員變數 成員方法 2 對於靜態的成員方法來說,只能訪問靜態的成員不能訪問非靜態的成員。執行靜態方法可能還沒有建立物件...

java的static關鍵字

一.static的使用場景 當在定義類的時候,類中都會有相應的屬性和方法。而屬性和方法都是通過建立本類物件呼叫的。當在呼叫物件的某個方法時,這個方法沒有訪問到物件的特有資料時,方法建立這個物件有些多餘。可是不建立物件,方法又呼叫不了,這時就會想,那麼我們能不能不建立物件,就可以呼叫方法呢?為了解決上...