你可以重写一个 readonly 属性,并用可写来替换它。 例如,下面定义了一个类MyInteger ,它有一个只读的属性 value:
@interface MyInteger:NSOBject
@property (readonly) NSInteger value;
@end
@implementation MyInteger
@synthesize value;
@end
然后你实现了一个子类,MyMutableInteger, 它重定义了这个属性并把它设为可写
@interface MyMutableInteger : MyInteger
@property (readwrite) NSInteger value;
@end
@implementation MyMutableInteger
@dynamic value;
- (void)setValue:(NSInteger)newx {
value = new;
}
@end