複習筆記 Java中 關於方法覆蓋的總結

2021-07-25 19:12:36 字數 376 閱讀 8870

1.子類方法不能縮小父類方法的訪問許可權。(舉例)

2.子類方法不能丟擲比父類方法更多的異常。

3.方法覆蓋只存在於子類和父類之間。在同乙個類中方法只能過載,不能被覆蓋。

4.父類的靜態方法不能被子類覆蓋為非靜態方法。

5.子類可以定義與父類的靜態方法同名的靜態方法,以便在子類中隱藏父類的靜態方   法;但是子類的靜態方法不能覆蓋父類的靜態方法。

6.父類的非靜態方法不能被子類覆蓋為靜態方法。

7.父類的私有方法不能被子類覆蓋。

8.父類的抽象方法可以被子類通過兩種途徑覆蓋:一是子類實現父類的抽象方法;二   是子類重新宣告父類的抽象方法。

9.父類的非抽象方法可以被子類覆蓋為抽象方法。

Java方法覆蓋

覆蓋方法必須滿足多種約束 1.子類方法的名稱 引數簽名和返回型別必須與父類方法的名稱 引數簽名和返回型別一致 2.子類方法不能縮小父類方法的訪問許可權。但訪問許可權可擴大。比如由預設到public。3.子類方法不能丟擲比父類方法更多的異常。但可以丟擲比父類更少的異常,或不丟擲異常。4.方法覆蓋只存在...

java繼承中關於覆蓋方法和子類構造器

覆蓋方法 1.在父類中一些方法並不適合子類所以用新的方法來覆蓋.本文用people類和student類進行解釋 定義父類people public class people public void setname string name public string get public void s...

java 方法的覆蓋

1.運用場景 假如有100個類,分別為sub1,sub2,sub3,它們的乙個共同行為是寫字,除了sub1類用腳寫字以外,其餘的類都用手寫字。我們可以抽象出乙個父類base,它有乙個方法write 表示寫字,為了提高 可重用性,write 應該採用大多數子類的實現方式。定義父類如下 public v...