OC中繼承和類別的區(qū)別:
聯(lián)系:
可以給一個類擴(kuò)展新的方法,或修改已用的方法;
區(qū)別:
(1)繼承修改的方法不會對父類原方法產(chǎn)生影響;類別修改的方法相當(dāng)于替換了原有方法;
(2)以viewController為例贵白,繼承一個ViewController相當(dāng)于建立一個新的頁面;而給一個ViewController添加類別用于增加或修改原ViewController上的方法崩泡;
(3)類別支持開發(fā)人員針對自己構(gòu)建的類禁荒,把相關(guān)的方法分組到多個單獨(dú)的文件中,對于大型而復(fù)雜的類允华,這有助于提高 可維護(hù)性圈浇,并簡化單個源文件的管理;
(4)針對系統(tǒng)提供的一些類靴寂,例如:NSString,NSArray,NSNumber等類磷蜀,系統(tǒng)本身不提倡使用繼承去擴(kuò)展方法,因為這些類內(nèi)部實現(xiàn)對繼承有所限制百炬,所以最后使用類別進(jìn)行方法擴(kuò)展褐隆;
(5)理論上類別不能新增屬性。