本文主要是介绍进击的KFC:(三)继承、初始化方法、便利构造器,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
⼀、继承
继承的特性:
1.继承是单向的(由上到下)
2.继承是可传递的
3.继承不能相互继承,
4.继承不能多继承
5.继承 就是 子类 继承 父类的所有实例变量和方法
继承的好处:
减少代码量 提高工作效率
继承中方法的调用:
使用self的时候: 优先调用本类中的方法,没有, 继续查找上一级,找到就调用,没有继续向上查找,都没有,就崩溃
使用super调用方法到的时候:直接跳过本类 去查找上一级的父类,找到就调用,没有就继续向上查找,都没有就崩溃
super 没有什么特殊的意义,就是一个 编译器指令
⼆、初始化⽅法
创建对象分两步:开辟空间、初始化。
初始化⽅法的主要作⽤是:为某些实例变量赋初值。
初始化⽅法在对象的整个⽣命周期⾥只使⽤⼀次。
完整初始化⽅法:
学习继承之前,初始化⽅法,没有self = [super init]字样。我们
为实例变量逐⼀赋值。
学习继承之后,⽗类中声明了公共的实例变量。作为⽗类,也
应该有⾃⼰的初始化⽅法,为这些公共实例变量赋初值。
⼦类定义了除⽗类中公共实例变量之外的实例变量。在⾃⾝的
初始化⽅法中,优先向super发送init消息,初始化公共变量,初
始化成功之后,再初始化⾃⾝特有变量,从⽽完成全部实例变量
的初始化。
三、便利构造器
便利构造器在初始化⽅法的基础上前进了⼀⼩步。封装了对象创
建过程。
便利构造器是“+”⽅法,返回 本类型 的实例,⽅法名以类名开
头。
可以有0到多个参数。
内部实现:封装了alloc和初始化⽅法。使⽤起来更加简洁
实现:
总结:
继承是⾯向对象三⼤特性之⼀,合理的继承,能减少很多冗余代码,
加快开发速度。
初始化⽅法以init开头,在对象的声明周期中只使⽤⼀次。
便利构造器封装了对象的创建过程,进⼀步简化了对象创建的步骤
这篇关于进击的KFC:(三)继承、初始化方法、便利构造器的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!