第壹個是通過方法重載實現;第二個是通過方法覆蓋實現(子類覆蓋父類方法)。
第壹種就是我們調用方法是不用區分參數類型,程序會自動執行相應方法,如: 加法運算,可以使int相加,可以是double相加,都是同壹個方法名。
第二種就是動態綁定,使用父類引用指向子類對象,再調用某壹父類中的方法時,不同子類會表現出不同結果。 這樣的作用就是擴展性極好,玩過網遊的話應該知道 遊戲中有不同的角色,它們都有壹個父類,它們做相同動作時表現出來的效果就會不壹樣,比如跑,魔法師的跑跟戰士的跑就不會壹樣,這就是倆者都覆蓋了父類中的跑方法,各自有自己的現實,表現出來多態。 如果有壹天妳想再加個角色,只用再寫壹個類繼承該父類,覆蓋其中的跑方法就行了,其他代碼不用怎麽改,所以可維護性也很好。
這壹個小的程序 或許妳體會不到多態的強度作用。其實說到多態就是 面向接口編程,它不和具體類盡心掛鉤了
比如 妳沒用多態的話 ,
妳沒實例化壹個對象 就要new壹下,那假如妳那天改變了需求了呢?那是不是又要改裏面的?這樣不好,所以 妳可以通過多態,把需要相似的給提出來,然後繼承它 這樣 以後需要擴展妳僅僅只是繼承而已。這樣就很簡單。
這個需要多看代碼 才可以更深刻理解。
有問題在討論。