1. 程式人生 > >8_物件建立、static 關鍵字、靜態變數和成員變數的區別、文件

8_物件建立、static 關鍵字、靜態變數和成員變數的區別、文件

一、物件建立

  Student s = new Student();

步驟:

(1)載入 Student.class 檔案進記憶體;

(2)在棧記憶體中為 s 開闢空間;

(3)在堆記憶體為學生物件開闢空間;

(4)對學生物件的成員變數進行預設初始化;

(5)對學生物件的成員變數進行顯示初始化;

(6)通過構造方法對學生物件的成員變數賦值;

(7)學生物件初始化完畢,把物件地址賦值給s變數。

 

二、static關鍵字

1、特點:

(1)隨著類的載入而載入;

(2)優先於物件存在;

(3)被類的所有物件共享;

(4)可以通過類名直接呼叫。

2、注意事項:

(1)在靜態方法中沒有 this 關鍵字;

(2)靜態方法只能訪問靜態的成員變數和成員方法。

 

 

三、靜態變數和成員變數的區別

1、所屬不同

  靜態變數屬於類,所以也稱為類變數;

  成員變數屬於物件,所以也稱例項變數。

2、記憶體中位置不同

  靜態變數儲存於方法區的靜態區;

  成員變數儲存於堆記憶體。

3、記憶體出現的時間不同

  靜態變數隨著類的載入而載入,隨著類的消失而消失;

  成員變數隨著物件的建立而存在,隨著物件的消失而消失。

4、呼叫不同

  靜態變數可以通過類名呼叫,也可以通過物件呼叫;

  成員變數只能通過物件名呼叫。

 

四、文件

如何使用JDK提供的幫助文件

(1)找到文件,開啟文件;

(2)點選顯示,找到索引,出現輸入框;

(3)舉例:找 Scanner;

(4)看這個類的結構(需不需要導包),java.util包下的內容需要我們手動匯入;

(5)看這個類的說明;

(6)看開始版本;

(7)看構造方法;

(8)看成員方法,左邊,是否為static,如果是就不需要建立方法,直接呼叫該方法,看返回值就使用什麼接收;右邊,看引數列表:個數,型別,需要什麼引數就傳什麼;

(9)然後使用。