Runtime
csdn_coder_zxq
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
OC load 方法调用顺序
OC load 方法调用顺序 原文 先调用父类 load 方法; 再调用子类 load 方法; 最后调用分类 load 方法; 没有继承关系的两个独立类,调用顺序同 Build Phases - Compile Sources 位置顺序; 两个独立的分类,调用顺序同 Build Phases - Compile Sources 位置顺序。 ...原创 2019-05-22 13:14:16 · 620 阅读 · 0 评论 -
OC +initialize 详解
OC +initialize 详解 原文 runtime 第一次使用类时,会调用该类的 +initialize 方法,用来类第一次初始化时做一些事情 调用方式 使用 objc_msgSend,即 isa, superClass 那一套机制来的。 调用顺序 先调用父类的 +initialize 方法; 若父类没有初始化过,则调用父类 +initialize 方法; 若父类初始化过,则不调用父类 ...原创 2019-05-22 14:08:49 · 484 阅读 · 0 评论 -
Runtime 学习之消息转发
Runtime 学习之消息转发 接受消息的对象没有实现相应的方法,runtime 会发生消息转发机制。 resolveInstanceMethod:(SEL)sel 动态为该对象添加方法实现。 目的:方法A的实现是运行时判断到底执行方法a,还是方法b,一旦确定之后,方法A的实现就确定了,以后再调用方法A时实际是调用方法a或方法b。那么我们就没有必要实现方法A,每次都再重定位到方法a或方法b,我们可...原创 2019-05-30 15:44:16 · 149 阅读 · 0 评论 -
Runtime 学习之介绍
Runtime 学习之介绍 OC 面向对象特性和动态性的的基石是 runtime runtime 怎么是面向对象特性的基石?我们知道面向对象有3大特性:封装,继承,多态。OC类是不能直接编译成汇编语言的,需要先编译成C语言,而这里的C语言是用 runtime 来实现的。 封装:对数据和操作整合成一个有机整体。 // 我们可以看到添加属性和方法用到了 runtime 的 API stat...原创 2019-05-29 20:53:34 · 193 阅读 · 0 评论 -
关联的苹果实现
关联的苹果实现 参考转载 2019-06-16 22:33:04 · 233 阅读 · 0 评论
分享