【发布时间】:2014-09-17 14:05:27
【问题描述】:
好的,“协议”和“继承”有几个问题,但我真的找不到我的问题的答案。我有一个带有协议的课程。例如:
@class SomeClass;
@protocol SomeDelegate <NSObject>
@optional
-(void) someMethod;
@end
@interface SomeClass : NSObject
{
id<SomeDelegate> delegate;
}
@property id<SomeDelegate> delegate;
-(void) thisDoesStuff;
@end
然后我有一个不同的类,其对象将是 SomeClass 对象的委托:
@interface DiffClass: SomeClass<SomeDelegate>
// This method will conform to the one specified on the protocol
-(void) someMethod;
@end
我的问题是,DiffClass 是否继承自 SomeClass?我正在考虑使用 Objective C 中的语法进行继承:
@interface ClassA : SuperClassOfClassA
在上面,ClassA 继承自 SuperClassOfClassA。
此外,在 Objective C 中,是否可以从一个类继承并采用不同类的协议?我想我想知道的是,两个对象是否有可能通过委托相互通信,而不必从该协议的类继承(我希望我说得通)。
提前致谢!
【问题讨论】:
标签: objective-c inheritance protocols