Man*_*ath 10 iphone cocoa cocoa-touch objective-c
像在java中一样:
一个最终的类不能被继承.这样做是出于安全和效率的原因.因此,许多Java标准库类都是final类,例如java.lang.System和java.lang.String.最终类中的所有方法都是隐式最终的.
如何在objective-c中实现此行为?
hoo*_*oop 11
你不能.效率没有进入它.如果您对安全性感到困扰,请不要使用objective-c.总会有办法绕过你采取的任何措施.
正如已经多次说过的那样,你做不到.
但是,如果你正在制作一个图书馆(这是我唯一可以看到它相关的情况),你可以采取一些步骤.嗯,一个,真的.
在类的文档中写下"此类不用于子类化".(参考NSIndexSet)或" 不要覆盖这种方法. "(参考+[NSApplication sharedApplication].
作为一种解释,值得注意的是(几乎)Obj-C中发生的所有事情,以及它与C的区别,都是在运行时发生的,而运行时则是"正确的".任何一段代码都可以在闲暇时检查,改变或颠覆运行时,使Obj-C成为一种非常强大的语言; 特别是关于其"元语言"结构.
| 归档时间: |
|
| 查看次数: |
4338 次 |
| 最近记录: |