任何人都可以請教我如何避免在Objective-C的子類中重寫超類方法,就像Java中的「最終」概念一樣。如何避免覆蓋子目錄中的方法c
回答
你不能。您甚至不能確定葉類的方法是否是您提供的方法,因爲我們可以使用Objective-C運行時庫來替換正在運行的應用程序中的方法實現。這是運行時庫設計的一個有意思的特徵。
好的,那麼如何保護我的超類屬性,即不能通過對象的存在來改變。以及開發人員在編寫框架或包裝時如何處理這些情況。 – chethan 2010-05-19 10:00:36
@tttthan你沒有,或者你記錄的要求,並希望開發人員遵循它。你可以做一些事情,比如KVC的隱藏屬性或者混淆他們的使用,但是你不能阻止人們接觸它們。 – 2010-05-19 10:38:07
試試這個:: http://iphonedevelopertips.com/objective-c/private-methods.html – 2012-04-30 06:13:10
嗯,我不知道「最終」等同於客觀C,但如果有一個父類的方法,你不想叫就是不寫具體的方法在你的子類
另外我認爲用「+」前綴編寫的方法與「 - 」相反是一種類方法,而不是一種實例方法,因此方法應該始終相同。
- 1. 如何避免覆蓋的SqlSessionFactory
- 2. 如何覆蓋子類中的方法?
- 3. 如何避免覆蓋文件
- 4. 如何避免AndoridManifest與Maven覆蓋
- 5. 如何避免覆蓋字典追加?
- 6. 如何覆蓋C#中的ToString()方法?
- 7. 避免覆蓋在陣列
- 8. Spark避免分區覆蓋
- 9. 避免404頁面覆蓋
- 10. C++中的覆蓋方法
- 11. 覆蓋超類中方法的目標C子類
- 12. C++覆蓋方法
- 13. C++方法覆蓋
- 14. 覆蓋子目錄中的FilesMatch
- 15. 如何覆蓋目錄?
- 16. 如何避免sqlite數據庫被其他方覆蓋
- 17. 如何覆蓋ironPython下的C#方法
- 18. 避免在WordPress中覆蓋htaccess
- 19. 如何避免在python中覆蓋全局字典中的鍵?
- 20. 的Python避免覆蓋變量
- 21. 避免意外的固件覆蓋
- 22. 避免覆蓋列表的值 - Python(Pandas)
- 23. 如何避免在Python中覆蓋系統庫的屬性?
- 24. 如何避免覆蓋Firebase中的數據
- 25. 如何避免父級中定義的Maven插件被孩子覆蓋?
- 26. 覆蓋子接口方法
- 27. 如何避免特定目錄的RewriteRule?
- 28. 覆蓋多個目錄的git子樹
- 29. 如何覆蓋更改並避免在GIT中合併
- 30. 如何避免在openshift tomcat中部署後每次覆蓋server.xml
這個問題也可能揭示這個問題: http://stackoverflow.com/questions/2864273/how-to-avoid-the-base-class-member-functions-getting-overridden-by-sub -class-in-o/2864554 – 2010-05-19 10:20:03