OC中 self = [super init] 的简单总结

首先,写每一句代码都是有目的的,而在重写init 方法中, self = [super init] 这句代码的最终目的就是对的当前对象完成一次初始化。

子类从父类中继承了所有的一切,如果使用父类的初始化方法会对所继承的父类属性进行初始化,而对于子类特有的新属性不会初始化,因此,

重写init 方法的目的之一就是可以对子类的特有属性进行初始化。并且init是对象方法,必须有对象调用,而super 则表示调用的父类的同名方法,再调用了

父类的init方法后还是返回一个已经初始化了的子类对象,然后在赋值给子类对象。要使用子类自己的init 方法,必须先有子类的对象,有了子类的对象,就有了所继承的父类属性以及子类自有的新属性(如果有定义),在调用子类的init方法,即完成了对继承的父类属性的初始化,也完成了对子类特有属性的初始化

self 实质是指针,因为表示任何对象都只能通过指针指向对象的内存地址来表示。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值