iOS Load方法 和 initialize方法的比较

Posted HEJJY

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了iOS Load方法 和 initialize方法的比较相关的知识,希望对你有一定的参考价值。

一、load方法特点: 

1、 当类被引用进程序的时候会执行这个函数

2、一个类的load方法不用写明[super load],父类就会收到调用,并且在子类之前。

3、Category的load也会收到调用,但顺序上在主类的load调用之后。

 

二、initialize方法特点:

1、 initialize的自然调用是在第一次主动使用当前类的时候

2、和load不同,即使子类不实现initialize方法,会把父类的实现继承过来调用一遍。注意的是在此之前,父类的方法已经被执行过一次了,同样不需要super调用。

3、如果分类里面有initialize方法,类中的initialize不再调用,直接调用分类中的initialize方法

 

三、load和initialize有很多共同特点,下面简单列一下

1、在不考虑开发者主动使用的情况下,系统最多会调用一次

2、如果父类和子类都被调用,父类的调用一定在子类之前

3、都是为了应用运行提前创建合适的运行的

以上是关于iOS Load方法 和 initialize方法的比较的主要内容,如果未能解决你的问题,请参考以下文章

iOS开发-类的加载load函数和initialize函数

iOS load和initialize的区别

IOS杂笔- 7(类方法load与initialize的区别 浅析)

IOS杂笔- 7(类方法load与initialize的区别 浅析)

iOS +load方法与 +initialize 方法调用顺序

iOS +load方法与 +initialize 方法调用顺序