廢話不多說,上圖再總結
終結:
這都是啥,巴拉巴拉一大堆,其實就一個點要注意(其他的都是正常情況,對,你想的就是對的。實例化誰就調誰)
當以子類(B)去實例化類,轉化爲父類時(Base)。也就是說當前對象是子類,我強轉成父類了
調用帶new關鍵字的方法時,調用的是父類方法(base _ method2)
調用帶override關鍵字的方法時,調用的是子類方法(B_method1)
所以捏:new只是隱藏類父類的方法,其實還是存在得,該調還是得調,
override覆蓋了 父類方法,調的時候直接調覆蓋的方法(只針對於實例後轉爲父類的情況哦)
等同於這樣寫,(原寫法更裝逼,一看就是大神)