1545190233194.jpg
数据结构
objc_object objc_class
-所有的对象都是id类型的,id类型在runtime中对应的就是objc_object结构体
未命名文件-2.png
isa指针
未命名文件-2.png
cache_t
- 用于快速查找方法执行函数
- 可增量扩展(当结构存储的量增大时,它会同步的增大内存空间,来支持更多的缓存)的哈希表(为了提高查找效率)结构
-
计算机局部性原理(把调用频率最高的方法放入缓存中,会提高执行效率)的最佳应用
未命名文件-2.png
- 方法选择器的名称,通过哈希查找算法,获取当前key所对应的在cache_t结构中的bucket_t结构体
- 然后定位后,提起bucket_t结构中的IMP函数指针来找到函数的具体实现
class_data_bits_t
- 主要对
class_rw_t的封装 -
class_rw_t代表类相关的读写信息(例如给类添加的分类,属性及方法都是在class_rw_t这个数据结构中的),对class_ro_t的封装 -
class_ro_t代表了类相关的只读信息
class_rw_t
未命名文件-2.png
class_ro_t
未命名文件-2.png
method_t
未命名文件-2.png
总结
未命名文件-2.png












网友评论