我正在制作一个SDK,我想要一个类似 @required 的变量。像@required annoation的委托方法那样使得该方法符合强制性。我怎样才能在Objective-c中实现这个目标?
答案 0 :(得分:1)
您可以向协议添加属性声明,就像使用任何其他方法一样。与协议一样,默认情况下需要成员。
如果required属性为readwrite
(默认值),则符合类必须同时实现getter和setter。他们可以根据您的需要手动或使用编译器提供的实现来执行此操作。同样,如果必需属性为readonly
,则只能实现getter,当然您也可以实现setter。
@protocol SerialNumbered <NSObject>
@property (strong, nonatomic, readonly) NSString *serialNumber;
@end