2011-05-17 70 views
2

我的問題是:爲什麼Apple禁止將一些類繼承爲子類,例如MKMapView?在可可中繼承子類

請問這樣做的原因是什麼?

謝謝您的回答

回答

1

簡短的回答是,儘管它們看起來像正常上課,他們可能都沒有。這意味着對它們進行子類化並不知道它們如何實現可能不會達到你所期望的效果。

有一些像收集類,你可以子類,但你需要遵循一些成文規則。還有一些他們只是說「不」。我已經看到開發人員忽略了這個建議,只是發現他們的應用在下一次iOS更新中斷了。

好消息是,這些類的實現方式通常意味着如果你試圖對它們進行子類化,你可能會做錯了。可可在很大程度上依賴於委託和組合,這意味着你傾向於將系統組件的子類化比其他框架(例如Java和.Net)少得多。