您的位置:首页 > 其它

OC基础知识 -- 继承

2015-11-05 09:32 148 查看

继承

继承的特性:

继承是单向的(从上到下)

继承是可传递的

不能相互继承

不能多继承

继承 就是子类继承父类的所有的实例变量和方法

继承的好处: 减少代码量 提高工作效率

self 和 super

1. 使用self调用方法的时候 :

若本类某个方法要调用本类其他方法 优先调用本类中的其他方法 没有的话继续查找上一级 找到就调用 都没有就崩溃

2. 使用super调用方法的时候 :

直接跳过本类去查找上一级的父类 找到就调用 没有的话继续查找 都没有崩溃

super没有特殊的意义 就是一个 编译器指令

完整的自定义方法

赋值实例变量的时候需要先判断下继承是否成功 也就是调用父类的初始化方法

self = [super initWithName:name sex:sex age:age];
if (self) {
// 如果继承成功的话 就继续初始化子类中特有的实例变量
// 如果继承失败 直接返回就行
_number = number;
}
return self;


便利构造器

+ (instancetype)lanouStudentWithName:(NSString *)name sex:(NSString *)sex age:(NSInteger)age number:(NSInteger)number jianChi:(NSString *)jianChi
{
LanouStudent *lanouStu = [[LanouStudent alloc] initWithName:name sex:sex age:age number:number jianChi:jianChi];
return lanouStu;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  继承