构造方法会在类被实例化的时候执行,OC中的构造方法名为init
重写构造方法 init
重写init方法必须按照苹果规定的格式重写,如果不按照规定会引发一些未知错误
注意点:
- 1.必须先初始化父类,再初始化子类
- 2.必须判断父类是否初始化成功,只有父类初始化成功才能继续初始化子类
- 3.返回当前对象的地址
#import <Foundation/Foundation.h>
@interface Person : NSObject
@property int age;
@end
@implementation Person
// 当需要在实例化的时候对成员方法赋予默认值的时候,就需要重写构造方法
- (instancetype)init
{
self = [super init];
if (self) {
_age = 10;
}
return self;
}
@end
int main(int argc, const char * argv[]) {
Person *p = [Person new];
NSLog(@"%i", [p age]);
return 0;
}