>>> @property 和 @synthesize
.h文件中的定义如下:
.m文件中的定义跟使用:
这是一种代码生成机制,能够生成不同类型的getter/setter函数,
特别是如果你想要用点(.)操作符号来存取变量的话,你就能必须使用property
假设:声明了:@property int num;
此处代码可以替换为:
- (int) num;
-(void) setnum:(int) n;
调用的时候:
int value =[class num] 等价于: int value = class.num
[class num:23] 等价于:class.setnum(23)
作为synthesize: @synthesize num
也就是上面的函数展开式:
-(int) num{
return num;
}
-(void) setnum:(int) n{
num = n
}
有时候可以看到@synthesize num = _num
这个没有什么其他意思,就是个num起了一个别名,防止混淆。
OC中的静态变量使用:
静态变量的使用是在.m文件的头部,也就是在#import结束后, 就可以开始声明你的static 变量。
静态变量的作用域是当前的. h文件。
像这样:
#import xxx
static int num;
。。。
。。。
。。
。
对于类方法的引用是这样的,
首先声明:
+(void) myMethod;
调用时,根据其它语言的特性仿照写:(类名+方法名)
like this: [Class myMethod];