Java中的super關鍵字與this關鍵字
阿新 • • 發佈:2019-02-17
super關鍵字:
super關鍵字代表了父類空間的引用。
super關鍵字的 作用:
1. 子父類存在著同名的成員時,在子類中預設是訪問子類的成員,可以通過super關鍵字指定訪問父類的成員。
2. 建立子類物件時,預設會先呼叫父類無參的構造方法,可以通過super關鍵字指定呼叫父類的構造方法。(super()呼叫父類無參建構函式,super(引數列表)呼叫父類有參建構函式。super.(super點)呼叫方法和屬性)
super關鍵字呼叫父類構造方法要注意的事項:
1. 如果在子類的構造方法上沒有指定呼叫父類的構造方法,那麼java編譯器會在子類的構造方法上面加上super()語句
2. super關鍵字呼叫父類的建構函式時,該語句必須要是子類建構函式中的第一個語句。
3. super與this關鍵字不能同時出現在同一個建構函式中呼叫其他的建構函式。因為兩個語句都需要第一個語句。
super關鍵字與this關鍵字的區別:
1. 代表的事物不一致。
1. super關鍵字代表的是父類空間的引用。
2. this關鍵字代表的是所屬函式的呼叫者物件。
2. 使用前提不一致。
1. super關鍵字必須要有繼承關係才能使用。
2. this關鍵字不需要存在繼承關係也可使用。
3. 呼叫建構函式的區別:
1. super關鍵字是呼叫父類的建構函式。
2. this關鍵字是呼叫本類的建構函式。