類的繼承是存在侷限性的,一個 子類只能繼承一個父類,可是能夠多重繼承,多重繼承就是先讓B類繼承A類,以後再讓C類繼承B類。java
calss A{} //這是父類面試
class B extends Af{; //此時 B類具有了A的操做spring
class C extends B{}; //此時 C類有A類和B類的全部操做 設計模式
DEMO:多重繼承微信
此時C類就繼承了A類和B類的屬性以及方法,其實上在實例化子類的時候會調用父類的構造方法(雖然子類不能繼承父類的構造方法,可是在實例化子類的時候會默認調用),並且默認調用的是無參構造方法。分佈式
DEMO:調用父類的構造方法學習
經過上面的錯誤提示就能夠知道實例化子類的時候必定要先調用父類的構造方法,默認調用的是無參數構造方法,此時若是提供了有參數構造方法,那麼咱們要將無參數構造方法顯示的定義。設計
DEMO:無參構造方法調用3d
知道了實例化子類的時候須要調用父類的無參構造方法,若是要調用父類的有參數構造方法呢?此時須要使用到一個新的關鍵 字「superorm
DEMO:調用有參數構造方法
以上就是構造方法在子類和父類之間調用的關係,你要清楚。
一、繼承有單繼承的侷限(一個子類只能有一個父類),可是能夠多重繼承
二、在實例化子類的時候會先調用父類的構造方法(默認調用的是無參數構造,若是要調用有參數構造須要使用關鍵字super實現)
三、若是是多重繼承,那麼實例化子類的時候最早調用的是最高父類的構造方法,依次往下
有完整的Java初級,高級對應的學習路線和資料!專一於java開發。分享java基礎、原理性知識、JavaWeb實戰、spring全家桶、設計模式、分佈式及面試資料、開源項目,助力開發者成長!
歡迎關注微信公衆號:碼邦主