@interface Square : NSObject
@property double side;
@property (nonatomic) double area;
@end
@implementation Square
-(void) setArea: (double) area {
self.side = sqrt(area);
}
-(double) area {
return self.side * self.side;
}
@end
Square *square = [Square new];
square.side = 2;
//square.area is 4
square.area = 9;
//square.side is 3