繼承:
1、提高代碼的復用性
2、讓類與類之間產生關系,為第三個特征多態產生了關系
Java支持單繼承,不直接支持多繼承
單繼承:一個類只能有一個父類
多繼承:一個類可以有多個父類
優勢:讓子類具備更多的功能
弊端:調用的不確定性,因為方法的主體不同,java對其進行改良
- 繼承體系(多層次繼承)
學習一個繼承體系時先看頂層,了解該體系中具備的基本功能。
使用時,找體系最下層的對象
繼承的特點
關鍵字 super
super和this的用法很相似
this:代表本類對象的引用
super:代表父類的那片空間Override 重寫方法
當子父類類中出現同名的方法時,子類對象運行的是子類的方法
這種特殊情況叫做 @Override 重寫
注意:
1、子類方法覆蓋父類方法,應保證子類方法權限應大于或者等于父類的權限
2、靜態只能覆蓋靜態,或者被靜態覆蓋構造函數(子類的實例化過程)
在創建子類對象時,父類中的空構造函數也運行了
子類中的所有構造函數第一行默認都有一個隱式的super()語句
注意:
調用本類中的實參構造函數this(參數列表),調用父類為super(參數列表)
1、當父類中沒有定義空參數構造函數,子類需要通過顯示定義super語句指定訪問父類中的構造函數。
2、用來調用父類構造函數的super語句在子類構造函數中必須定義在第一行,因為父類的初始化要先完成。