我注意到 Cocoa/Objective-C 类继承并遵循其他类。我理解什么是继承,但不理解一致性。有什么区别?
另外,像 UIView 这样的类是 Cocoa 类还是 Objective-C 类?
最佳答案
类不符合类,它们符合 protocols ,它们基本上是类可以响应的消息列表。如果一个类符合协议(protocol),它必须响应协议(protocol)接口(interface)中列出的所有非可选消息。
此外,Cocoa 类和 Objective-C 类之间并没有真正的区别。 Cocoa 是一个 Objective-C 框架,因此它的所有类都是 Objective-C 类。如果您询问像 UIView 这样的类是否是语言或框架的一部分:您通常在 Cocoa/Cocoa Touch 应用程序中交互的每个类都来自框架。标准 Objective-C 运行时提供的 native 类有:
- 对象
- 协议(protocol)
- 列表
如果您想亲自查看 header ,可以转到/usr/include/objc。这些都不会在普通的 Cocoa 或 Cocoa Touch 程序中使用。您确实使用协议(protocol)(如上所述),但通常不直接引用该类。
关于objective-c - Cocoa/Objective-C 类中的一致性与继承,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3376071/