协议是否可以在Objective-C中继承?

时间:2010-06-04 06:01:40

标签: objective-c cocoa

我在框架目录的一些头文件中看到了这个:

@interface NSCharacterSet : NSObject <NSCopying, NSMutableCopying, NSCoding>

@end

@interface NSMutableCharacterSet : NSCharacterSet <NSCopying, NSMutableCopying>

@end

我认为协议是可继承的。如果我是对的,就不需要在“<NSCopying, NSMutableCopying>”之后再次输入NSMutableCharacterSet : NSCharacterSet。而且NSMutableCharacterSet也符合NSCoding协议,对吧?

为什么苹果再次打字呢?我错了吗?

1 个答案:

答案 0 :(得分:8)

是。子类也将采用相同的协议。

Apple再次输入的原因是因为NSMutableCharacterSet已覆盖-copyWithZone:-mutableCopyWithZone: