重載和重寫的區別

方法的重載和重寫都是實現多態的方式,重載是實現編譯時的多態性,重寫是實現運行時的多態。
重載的規則:
1、方法名一致,參數列表中參數的順序,類型,個數不同。
2、重載方法的返回值無關,存在子類和父類,同類中。
3、可以拋出不同異常,可以有不同修飾符。
重寫的規則:
1、重寫方法的參數列表必須完全與被重寫的方法的相同,否則不能稱其爲重寫而是重載.
2、重寫方法的訪問修飾符一定要大於被重寫方法的訪問修飾符(public>protected>default>private)。
3、重寫的方法的返回值必須和被重寫的方法的返回一致;
4、重寫的方法所拋出的異常必須和被重寫方法的所拋出的異常一致,或者是其子類;
5、被重寫的方法不能爲private,否則在其子類中只是新定義了一個方法,並沒有對其進行重寫。
6、靜態方法不能被重寫爲非靜態的方法(會編譯出錯)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章