@interface rectangle: NSObject
@property int width, height;
{
-(int) area;
-(int) perimeter;
-(void) setWidth: (int) w andHeight: (int) h;
}
@end
@implementation rectangle
@synthesize width, height;
...
...
@end
我做了一个矩形的正方形子类
@interface square: rectangle
-(void) setSide: (int) s;
-(int) side;
@end
@implementation square
-(void) setSide: (int) s
{
[self setWidth: s andHeight: s];
}
-(int) side
{
return self.width;
}
@end
我的主要问题是:为什么我不能这样做
return width;
当我想得到我的方形物体的侧面时。我想
@property int width, height;
只是一个简化的
@interface rectangle: NSObject
{
int width;
int height;
}
//getter/setter methods
...
@end
而在书中,如果在@interface 中声明了一个实例变量,它就会被它的子类继承。但是,显然,
return width;
似乎不起作用。为什么会这样?