分类: iOS平台
2015-03-24 11:03:07
1.[student new]也可以分配内存然后初始化。
student *su = [[student alloc] initWithAge:19 andNo:11];等效于
student *su = [student new];
2.property
当编译器遇到@propetry时,会自动展开成get,set方法的声明
.h: @property int age; 会展开 -(int)age; -(void)setAge:(int)newage;的方法声明
synthesize
.m: @synthesize age;会展开 -(int)age; -(void)setAge:(int)newage;的具体实现语句
并且如果.h里没声明该变量,则会在.m里自动创建一个私有的该变量
3.@property 只在@interface里有效
@synthesize 只在@implementation里有效
4.//自动生成变量名字为_age,并且是私有的
@synthesize age = _age;
5.
编译器新特性,Xcode4.5以上
写了@property,就不用写 @synthesize,会自动在.m文件里生成@synthesize age = _age;
6.@property @synthesize是编译器的特性,就是会自动展开成别的代码
.h里面写@property
.m里不一定用些@synthesize,他俩没必要必须配对出现
如果已经手动实现了set或者get方法,@property @synthesize就会用手动实现的