1、重載定義:派生類繼承父類方法時,該方法具有相同的返回類型,並且參數的數目與重載的方法相同,即對父類同名函數進行重寫。
2、好處:可以利用重載來修改繼承方法的定義。
實例:
在如上的代碼中,我定義並實現了兩個類:declaration和ClassB,前者作為基類,後者作為派生類即子類,直接存在繼承關系。現在如果我們在派生類中寫一個與基類同名的函數:initVar,並且返回類型和參數個數名字都相同,那麼派生類中的initVar函數就是重載基類中的同名函數了,而重載是屬於復制函數,屬於子類的,不是使用基類。
重載dealloc方法和super關鍵字
delalloc是從NSObject繼承的。為什麼我們在釋放內存時不用release方法而用dealloc方法呢?因為在我們實踐中release有時釋放對象使用的內存,有時卻不。只有在其他人引用某個對象時,release才釋放該對象所占用的內存。這通過調用該對象的dealloc方法來完成,實際上是由dealloc來釋放內存的。
如果重載dealloc方法,必須確保不僅要釋放自己的實例變量所占用的內存,而且釋放繼承的變量所占的內存。
通過使用super關鍵詞可以引用消息接收者的父類。