1. 程式人生 > >JAVA——基礎知識筆記(一)

JAVA——基礎知識筆記(一)

類與物件

  1. 類和物件的關係:類定義了物件長什麼樣,物件則是按照類的定義所製造出來的實體,一個類可以建立很多物件,每個物件有自己的資料。
  2. 物件變數是物件的管理者而非所有者。物件變數是物件的管理者而非所有者。
  3. 物件的比較
    ‘==’:物件引用的地址是否相同
    ‘equals’:所指內容是否相同
/*定義類*/
class 類名稱 {
         屬性 (變數) ;
         行為 (方法) ;
}

/*例項化物件*/
類名稱 物件名稱 = new 類名稱 () ;

成員變數與區域性變數

成員變數和區域性變數的區別

   成員變數:
   
      ①成員變數定義在類中,在整個類中都可以被訪問。

      ②成員變數隨著物件的建立而建立,隨著物件的消失而消失,存在於物件所在的堆記憶體中。

      ③成員變數有預設初始化值。

  區域性變數:

      ①區域性變數只定義在區域性範圍內

      ②區域性變數存在於棧記憶體中,作用的範圍結束,變數空間會自動釋放。

      ③區域性變數沒有預設初始化值 


  在使用變數時需要遵循的原則為:就近原則

  首先在區域性範圍找,有就使用;接著在成員位置找。

this與super

  1. this
    this可以用在成員方法與成員變數中.
    this不能用在靜態方法中

  2. this()
    this(實參);
    通過一個構造方法去呼叫另一個構造方法。
    必須出現在構造方法的第一行。

  3. super()
    用法:通過子類的構造方法去呼叫父類的構造方法.
    語法規則:一個構造方法第一行如果沒有this(…);也沒有顯示的去呼叫super(…);
    系統會預設呼叫super();
    注意:
    super(…);的呼叫只能放在構造方法的第一行.
    super(…)和this(…)不能共存。

  4. super
    語法:super.xx 來呼叫父類的成員方法或成員變數.
    注意:super無法呼叫父類的private方法與變數。

static關鍵字

static可以用來修飾成員變數和方法,被static修飾的成員變數稱為靜態變數,方法稱為靜態方法。

靜態變數和方法在記憶體中只有一份,是屬於類的,物件之間共享,通過類名.成員變數或者方法呼叫。

當成員變數被static和 final 修飾時被稱為靜態常量,常量不能被修改。

由於靜態成員是屬於類的,因此需要注意:

1.靜態方法不能使用this關鍵字

2.靜態方法不能直接呼叫非靜態方法

3.方法體內的變數不能宣告為static

public,private,protected關鍵字

public:可以被所有其他類所訪問

private:只能在類內訪問與修改

protected:自身、子類及同一個包中類可以訪問

預設:同一包中的類可以訪問,宣告時沒有加修飾符,認為是friendly