天天看點

基礎篇——重載(Overloading)和重寫(Overriding)的差別

寫代碼的四點:

     1.明确需求。要做什麼?

     2.分析思路。要怎麼做?(1,2,3……)

     3.确定步驟。每一個思路要用到哪些語句、方法和對象。

     4.代碼實作。用具體的語言代碼将思路實作出來。

學習新技術的四點:

     1.該技術是什麼?

     2.該技術有什麼特點?(使用需注意的方面)

     3.該技術怎麼使用?(寫Demo)

     4.該技術什麼時候用?(在Project中的使用場景 )

----------------------早計劃,早準備,早完成。------------------------

重載:

        在一個類中定義了多個名稱相同,而參數不同(參數的數量或類型或次序不同)的方法,則稱為方法的重載。

重寫:

        子類中的方法與父類中的方法名稱相同,并且參數的個數與類型相同,傳回值也相同,則成為方法的重寫。

注:重載是一個類的多态性表現,而重寫是子類與父類之間的一種多态性表現。

重載的規則:

        1.必須改變參數清單(參數的數量或類型或次序不同);

        2.可以改變傳回值類型(是否重載與傳回值類型無關);

        3.可以改變通路修飾符;

        4.可以聲明新的或更廣的檢查異常;

        5.最常用的就是構造方法的重載;

重寫的規則:

        1.不可以改變參數清單;

        2.不可以改變傳回值類型;

        3.通路修飾符不能比父類中被重寫的方法的通路權限更低(public>protected>default>private);

        4.不能抛出新的強制性異常,不能抛出比被重寫的方法聲明的更廣泛的強制性異常;

        5.構造方法不能被重寫;

---------------------------------------------------------------------------------------------------------------------------

早計劃,早準備,早完成。 歡迎關注!交流!Star!

GitHub:https://github.com/wangyang0313

微信公衆号:一個靈活的胖子MrWang

簡書:https://www.jianshu.com/u/e5e733d79b96  

基礎篇——重載(Overloading)和重寫(Overriding)的差別