实例化类对象中alloc和inti的区别

时间:2022-06-10 19:02:28

在OC中,实例化一个类对象需要通过调用alloc和init两个系统既定方法进行初始化,比如:

Fraction *frac=[[Fraction alloc]init];

两者的区别如下:

1.alloc方法保证对象所对应的类里定义的所有实例变量都变成初始状态,但并没有使该对象本身进行初始化;

2.init方法用于初始化类要实例化的对象,它可以返回一个值,即被初始化的对象。

ps:当然实例化一个对象还可以采用一种简便的方式,比如:

Fractiion *frac=[Fraction new];

但官方并不推荐,所以平时还是用方式一实例化对象比较好!