Objective-C之Class底层结构探索
💡
原文中文,约11700字,阅读约需28分钟。
📝
内容提要
该文章讨论了OC类的底层类结构和数据存储方式,包括isa走位图、superclass指向父类和根类的关系,以及各种数据结构的作用和存储方式。文章还介绍了method_t和cache_t结构体的使用和类方法缓存的实现方式。
🎯
关键要点
- 文章讨论OC类的底层类结构和数据存储方式。
- isa走位图显示类、父类和元类之间的关系。
- objc_class结构体包含isa、superclass、cache_t和class_data_bits_t。
- cache_t用于缓存常调用的方法,提高查找效率。
- class_rw_t、class_ro_t和class_rw_ext_t存储类的详细信息。
- method_t结构体用于表示方法,包括方法名、类型和实现指针。
- cache_t的bucket_t结构体用于存储方法的散列表。
- 通过mask值计算方法在散列表中的索引,提高查找速度。
- 类的初始信息存储在class_ro_t中,运行时信息合并到class_rw_t中。
🏷️
标签
➡️