1. 程式人生 > >8_對象創建、static 關鍵字、靜態變量和成員變量的區別、文檔

8_對象創建、static 關鍵字、靜態變量和成員變量的區別、文檔

區別 註意事項 共享 實例 手動 索引 sta 文件 his

一、對象創建

  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)然後使用。

8_對象創建、static 關鍵字、靜態變量和成員變量的區別、文檔