alloc来自NSObject
1.所有实例变量分配内存空间
2、将每个实例变量的内存空间都重置为0.
整形变量->0 浮点型变量->0.0 BOOL->NO 指针类型变量->nil
仅仅分配内存空间的对象还不能使用,必须先对该对象执行初始化,方法为init 或者自定义。
-(id)init{
if (self=[super init]) {
FKPreson *re=[[FKPreson alloc]init];
re.name=@"12345";
re.age=45;
self.p=re;
}
return self;
}
-(id)initWithName:(NSString*)name{
if ((self=[super init])) {
FKPreson *re=[[FKPreson alloc]init];
re.name=name;
self.p=re;
}
return self;
}
-(id)initWithName:(NSString*)name age:(int)age{
if ((self=[self initWithName:name])) {//此处使用的是self而非super
FKPreson *re=[[FKPreson alloc]init];
re.age=age;
self.p=re;
}
return self;
网友评论