1. 程式人生 > >java之繼承

java之繼承

繼承是通過關鍵字extends體現的。

格式:
    class 類名1 extends 類名2{
    }

繼承要注意的事項:
1. 千萬不要為了減少重複程式碼而去繼承,只有真正存在著繼承關係的時候 才去繼承。
2. 父類私有的成員不能被繼承。
3. 父類的建構函式不能被繼承。
4. 建立子類物件時預設會先呼叫父類無參的建構函式。

super關鍵字:
super關鍵字代表了父類空間的引用。

super關鍵字的 作用:
1. 子父類存在著同名的成員時,在子類中預設是訪問子類的成員,可以通過super關鍵字指定訪問父類的成員。
2. 建立子類物件時,預設會先呼叫父類無參的構造方法,可以通過super關鍵字指定呼叫父類的構造方法。

super關鍵字呼叫父類構造方法要注意的事項:
1. 如果在子類的構造方法上沒有指定呼叫父類的構造方法,那麼java編譯器會在子類的構造方法上面加上super()語句。
2. super關鍵字呼叫父類的建構函式時,該語句必須要是子類建構函式中的第一個語句。
3. super與this關鍵字不能同時出現在同一個建構函式中呼叫其他的建構函式。因為兩個語句都需要第一個語句。

super關鍵字與this關鍵字的區別:
一、 代表的事物不一致。
1. super關鍵字代表的是父類空間的引用。
2. this關鍵字代表的是所屬函式的呼叫者物件。
二、 使用前提不一致。
1. super關鍵字必須要有繼承關係才能使用。
2. this關鍵字不需要存在繼承關係也可使用。
三、呼叫建構函式的區別:
1. super關鍵字是呼叫父類的建構函式。
2. this關鍵字是呼叫本類的建構函式。