欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

OC重写init方法

程序员文章站 2022-04-12 12:59:46
在创建一个对象的时候我们经常会用到init方法,单单是init只能是初始化,当我们在初始化的时候想要给这个对象加上默认的东西的时候, 系统提供的init方法就不能满足我们的需要,这时,就需要我们自己去重写init方法; 通常在使用init方法的时候,系统先会在自己这个类中查询是否实现(重写)这个方法 ......

在创建一个对象的时候我们经常会用到init方法,单单是init只能是初始化,当我们在初始化的时候想要给这个对象加上默认的东西的时候,

系统提供的init方法就不能满足我们的需要,这时,就需要我们自己去重写init方法;

通常在使用init方法的时候,系统先会在自己这个类中查询是否实现(重写)这个方法,如果没有实现,就会逐层向上面的父类查找,直到

找到实现了的init方法,其他方法的执行顺序也是这样。

1.首先创建一个person 类和一个car 类

OC重写init方法

2.在car类里面定义属性(我们要的效果是输出:小王有一辆红色奥迪a8 。并且在创建类的时候使用自己重写的init方法)

OC重写init方法

3.在person类中导入car类,定义属性

OC重写init方法

4.重写car类和person类中的init方法

OC重写init方法

OC重写init方法

5.创建对象进行输出

OC重写init方法

OC重写init方法

这样虽然初始化成功了,但是灵活性太差,我们还可以这样做,写一个initwith样式的方法

car.h

 OC重写init方法

 

car.m

 OC重写init方法

 

main.m

 OC重写init方法