+load
·1 分钟
OC
目录
Objc - 系列文章之一
Part 8: 当前阅读
+load是runtime加载类、分类时调用(只会调用1次)+load是根据函数地址直接调用的。
load调用顺序>
load调用顺序 #
- 先调用类的
+load
- 先编译的类优先调用
Category(分类)
- 调用子类的
+load
之前,会先调用父类的+load
- 先编译的类优先调用
- 再调用分类的
+load
- 按照编译先后顺序调用(先编译。先调用)
阅读源码(objc4)>
阅读源码(objc4) #
- objc-os.mm
- _objc_init
- load_images
- prepare_load_methods
- schedule_class_load
- add_class_to_loadable_list
- add_category_to_loadable_list
- call_load_methods
- call_class_loads
- call_category_loads
- *(load_method)(cls, SEL_load)
+load方法是根据方法地址直接调用,并不是经过
objc_msgSend
函数调用Objc - 系列文章之一
Part 8: 当前阅读