父子類構造呼叫特點以及this關鍵字

2021-09-24 06:04:11 字數 968 閱讀 7963

子類程式:

package cn.dali.code16;

/*構造方法:

作用:對類的成員變數進行初始化,注意不是物件的成員變數而是類的成員變數進行初始化後

交給物件,進入堆內。

父子類構造方法的訪問特點:

1.若子類構造方法沒有手動呼叫父類構造方法,則編譯器會自動生成乙個super();

也就是父類【無參構造方法】。

所以建立乙個子類物件的時候,一定是先執行父類構造方法後再執行子類構造方法。

2.若父類構造方法並沒有無參構造,或者想對父類成員變數進行初始化。需呼叫父類有參構造

呼叫父類有參構造則需要我們手動寫,編譯器並不會生成。

3.子類構造方法第一行必須是呼叫【父類構造方法或者使用this呼叫本類構造方法】。而且【只能呼叫一次】,

因為構造方法作用是初始化,進行兩次初始化沒有意義。

若不寫,編譯器會自動生成super()*/

當我們在子類構造方法當中呼叫了this另外乙個構造方法,則編譯器不會在此構造方法中生成super()

this關鍵字三種使用方法:

1.呼叫本類成員變數

2.成員方法中呼叫本類成員方法

3.構造方法中呼叫本類另外乙個構造方法

注意:第三種情況,在此構造方法中呼叫本類另外乙個構造方法必須是第一行

且不可以在此構造方法中建立super();

可以在另外乙個構造方法中手動建立,也可以自動生成super();

public class zilei extends fulei

public zilei(int num)

}

父類程式:

package cn.dali.code16;

public class fulei

public fulei(string name,int age)

}

List Set集合以及子類的特點

是有序 可重複 可以有null的集合,就像我們的陣列一樣。我們可以吧list理解為乙個長度可變了陣列,而且提供了豐富的api。arraylist 底層是陣列的原理,元素可以重複,有順序,長度不固定,不是執行緒安全的,效率高。arratlist長度的變化 arratlist在新增資料的時候,初始長度為...

父子類以及static的載入順序

static可以被寫在變數和 塊上,此時該變數和 塊不屬於物件,而屬於類,會在jvm執行類載入機制時的準備階段就被賦值以及執行,而非static的變數和 塊在初始化階段才會被賦值並執行。因此如果問靜態方法能否呼叫非靜態變數,答案是不能,因為後者在前者執行時還沒有初始化。通過結果,可以看到父子類的初始...

子類,父類構造方法的特點

子父類建構函式的特點 1 在對子類物件進行初始化時,父類的建構函式也會執行 2 那是因為子類的建構函式預設第一行有一條隱式的語句super 3 super 會訪問父類中空引數的建構函式,而且子類所有的建構函式預設第一行都是super 為什麼子類一定要訪問父類的建構函式?因為父類中的資料,子類可以直接...