1.kvc:Key-Value Coding 基本类型使用 集合类型使用 非对象类型,转换成相应的NSValue,取值的时候,使用getValu...
1. load_images的调用时机 在objc_init中,进行完一系列配置初始化完成之后 调用_dyld_objc_notify_regi...
1. _objc_init 程序在启动时,先用dyld进行动态库的链接,做完一系列准备操作之后,会进入到_objc_init方法 下面简单了解一...
简介 oc的方法调用,在底层会通过objc_msgSend进行消息发送 依次进行缓存快速查找imp,以及类的方法列表查找之后,如果仍然没有找到目...
1.方法的本质 1.1 探索 在之前的文章中,我们探索了对象、类、以及isa等的本质,那么今天我们一起来分析一下方法的本质,看看OC所调用的方法...
1. cache的结构 我们之前探索过Class的结构以及其内部的成员,其中了解到了isa,superClass以及bits的作用,但是剩下的c...
内存对齐是我们定义数据结构中一个必须要了解的知识点,内存对齐的目的在于能让系统从内存中快速的查找并且获取到我们想要获取的数据,达到空间换取时间的...
类的结构和定义 首先跟踪源码,找到Class的的定义,发现其本质为objc_class类型的指针,并且 objc_class继承自objc_ob...
1.isa本质 我们知道,oc中的一切类都继承自NSObject,直接追踪NSObject可以发现在objc/NSObject.h文件中对于该类...