调用方式
- load函数直接调用。
- initialize是通过objc_msgSend调用。
调用时刻
- load是在程序初始化的时候调用。(只调用一次)
- initialize在类第一次接收到消息的时候调用。
调用顺序
- load
- 先调用类中的load
先编译的类先调用load
在调用子类的load之前,会先调用父类的 - 后调用category中的load
先编译的先调用
- initialize
- 父类先于子类调用
- category会覆盖本类中的initialize
- 子类没实现会调用父类的,所以父类的initialize可能调用多次
网友评论