我注意到Cocoa/Objective-C类继承并符合其他类。我知道什么是继承,但不理解一致性。有什么关系呢?
另外,像UIView这样的类是Cocoa类还是Objective-C类?
发布于 2010-07-30 23:57:35
类不符合类,它们符合protocols,它基本上是一个类可以响应的消息列表。如果类符合协议,它必须响应协议接口中列出的所有非可选消息。
此外,Cocoa类和Objective-C类之间也没有真正的区别。Cocoa是一个Objective-C框架,所以它的所有类都是Objective-C类。如果你在问像UIView这样的类是不是语言或框架的一部分:在Cocoa/Cocoa Touch应用程序中通常与之交互的每个类都来自于框架。标准Objective-C运行时提供的本机类包括:
如果您想自己查看头文件,可以转到/usr/include/objc。所有这些都不会在正常的Cocoa或Cocoa Touch程序中使用。您确实使用了协议(如上所述),但通常不会直接引用该类。
发布于 2010-07-30 23:32:05
符合或者更准确地说符合一个协议仅仅是Objective C指定类应该实现的行为的方式,类似于java接口。
UIView是UIKit框架的一部分,所以它是一个Cocoa类。
发布于 2010-07-30 23:51:07
一致性或多或少与可分配性相同。但我从来没有见过这第二个术语用于它。
如果你可以将一个对象赋给变量b,那么a就符合b。
https://stackoverflow.com/questions/3376071
复制