第十三章 繼承

1. 繼承具備如下特色:java

 1)繼承具備層次結構,並具備傳遞性對象

 2)子類繼承了父類的屬性和方法(不包含構造方法),同時也能夠擁有本身的方法。繼承

 注意:java只支持單繼承,即一個子類只能有一個超類(父類),但一個父類能夠派生出多個子類,如同在現實生活中,一個兒子只能有一個父類,開發

但一個父類能夠有多個兒子。權限

2. 在使用繼承時注意如下事項:語法

 1)除非父類在開發中,不然不該該修改父類引用

   2)子類構造方法要負責調用適當的父類構造方法,無論是以顯示仍是隱式的方法方法

   3)父類的字段必須比子類的字段先初始化生活

4. 不能被繼承的父類成員參數

 private成員、子類與父類不在同包中、使用默認訪問權限的成員、構造方法

5. 訪問修飾符:

 訪問修飾符    本類    同包    子類    父類

  private      *

  friebdly(默認)   *     *

  protected    *     *      *

  public      *      *       *     *

6. 多重繼承關係的初始化順序是:

  父類屬性——父類構造方法——子類屬性——子類構造方法

7. 方法重寫與方法重載

        位置    方法名    參數表    返回值    訪問修飾符

  方法重寫  子類     相同     相同    相同或是其子類 不能比父類更嚴格

  方法重載  父類     相同     不一樣     無關      無關

8. 繼承的優勢:

 1)能夠建立更爲特殊的類型

 2)消除重複代碼

 3)利於維護

9. super關鍵字

 super關鍵字是指對象的引用,只不過它是指向父類對象的引用

10. super關鍵字的規則爲:
 若要在子類構造方法中調用超類構造方法,則在子類構造方法中的第一條語句要用super關鍵字來調用:

  1)調用父類構造方法的語法爲:

    super();//或super(參數列表);  必須是第一句

  2)調用父類的普通方法的語法爲:

    super.methodname(); //或super.methodname(參數列表);

    super.methodname()是假設這個方法是其父類型時所調用的對應方法,但須要強調的是:這個方法不必定在父類中被定義,

  它多是從層次結構上更上層的類中繼續來的。

11. super關鍵字來訪問父類的成員,須要注意:

  1)super只能出如今子類的方法和構造方法中;

  2)super調用構造方法時,只能在第一句;

  3)super不能訪問父類的private成員

12. 當父類不須要被實例化時,能夠把父類方法聲明爲抽象方法:

  public   abstract   calss   類名{};

相關文章
相關標籤/搜索