任何人都可以请教我如何避免在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. 如何避免在C#中覆盖多个方法?
- 2. 如何避免子类无意中覆盖超类私有方法
- 3. 如何避免覆盖的SqlSessionFactory
- 4. Objective-C - 子类中的覆盖方法
- 5. 如何覆盖子类中的方法?
- 6. 如何避免AndoridManifest与Maven覆盖
- 7. 如何避免覆盖文件
- 8. 如何避免覆盖字典追加?
- 9. 如何避免覆盖嵌套属性?
- 10. 如何避免我的方法覆盖现有骨干视图方法
- 11. 如何覆盖C#中的Logger.Error方法?
- 12. 避免覆盖在阵列
- 13. 避免CSS覆盖引导
- 14. 避免覆盖GAE版本
- 15. 避免被css覆盖
- 16. 避免404页面覆盖
- 17. Spark避免分区覆盖
- 18. 避免覆盖斑点AZURE
- 19. C++中的覆盖方法
- 20. 如何正确覆盖子类中Objective-C中的类方法?
- 21. 避免覆盖ArrayList中的对象
- 22. 避免覆盖中的异步问题
- 23. 覆盖超类中方法的目标C子类
- 24. 避免CSS覆盖CMS应用程序的方法?
- 25. C++方法覆盖
- 26. C++覆盖方法
- 27. 覆盖子目录中的htaccess
- 28. 覆盖子目录中的FilesMatch
- 29. 如何覆盖目录?
- 30. 如何覆盖ironPython下的C#方法
这个问题也可能揭示这个问题: 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