对于我当前的项目,我有一些协议,并在实现该协议的类上声明了一个类别:
@interface MyClass (ImplementingMyProtocol) <MyProtocol>
@end
@implementation
// Implementation of protocol
@end
我认为如何解释这个方案有两种可能性:
- 该类别仅适用于
MyClass
符合 的子类MyProtocol
。 - 类别适用于具有按类别
MyClass
实施效果的所有实例。MyProtocol
这两种可能性中的哪一种实际上适用?我不知道编译器如何解释这个声明,也没有找到关于该主题的任何帮助或文档。我想我知道如何处理这两个选项,但是要这样做,我需要知道编译器解释我的代码的方式实际上是哪一个。