@interface Shape : NSObject
{
ShapeColor fillColor;
ShapeRect bounds;
}
- (void) setFillColor: (ShapeColor) fillColor;
- (void) setBounds: (ShapeRect) bounds;
- (void) draw;
@end // Shape
@implementation Shape
- (void) setFillColor: (ShapeColor) c
{
fillColor = c;
} // setFillColor
- (void) setBounds: (ShapeRect) b
{
bounds = b;
} // setBounds
- (void) draw
{
} // draw
@end // Shape
这是一段Objective-C基础教程中的一段代码。已知ShapeColor在前文为typedef enum,ShapeRect为typedef struct。
首先代码的开头@interface Shape代表了这是一个新的类Shape的接头,而:NSObejct意味着Shape类会继承NSObejct类。
定义两个变量fillcolor与bounds分别为ShapeColor与ShapeRect型。
而之后声明函数
以setFillColor为例,若用C++来写的话
void setFillColor(ShapeColor fillcolor){}
于此相类似。
@end表示结束。
在Objective-C中,从属于类的函数叫做方法。
@interface用于表示接口
而@implementation才能使对象能够运行。
@implementation是编译器命令,表明你将为某个类提供代码。
接下来是各个方法的定义。
这一段代码就先分析完成。
/*---------------------------------------------------------------------------------------------------------------------------*/