load
- load 加载方式是通过函数地址直接调用的,不是通过消息发送机制调用
- load 是在main函数调用之前,加载到程序的时候调用,只执行一次
- load 的调用顺序
1.本类 ----- 子类 -------- 分类 (每个 load 方法都会被调用,每个本类的调用顺序不确定,如果不实现load方法,不会调用)
2.一个类的+load方法不用写明[super load],父类就会收到调用。
initialize
- 是在main函数之后收到第一个消息之前调用,是通过消息发送机制方式调用
- initialize 的调用顺序
- 继承:如果子类没有实现 initialize 方法,会把父类的实现继承过来调用一遍
- 父类和本类: 如果本类实现 initialize 方法,父类与本类方法都会带用,如果本类没有实现 initialize方法,则会调用父类方法
- 本类和Category:分类则会覆盖本类方法,本类方法不会被调用