
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 · 599 阅读 · 0 评论 -
OC +initialize 详解
OC +initialize 详解原文runtime 第一次使用类时,会调用该类的 +initialize 方法,用来类第一次初始化时做一些事情调用方式使用 objc_msgSend,即 isa, superClass 那一套机制来的。调用顺序先调用父类的 +initialize 方法;若父类没有初始化过,则调用父类 +initialize 方法;若父类初始化过,则不调用父类 ...原创 2019-05-22 14:08:49 · 457 阅读 · 0 评论 -
Runtime 学习之消息转发
Runtime 学习之消息转发接受消息的对象没有实现相应的方法,runtime 会发生消息转发机制。resolveInstanceMethod:(SEL)sel动态为该对象添加方法实现。目的:方法A的实现是运行时判断到底执行方法a,还是方法b,一旦确定之后,方法A的实现就确定了,以后再调用方法A时实际是调用方法a或方法b。那么我们就没有必要实现方法A,每次都再重定位到方法a或方法b,我们可...原创 2019-05-30 15:44:16 · 131 阅读 · 0 评论 -
Runtime 学习之介绍
Runtime 学习之介绍OC 面向对象特性和动态性的的基石是 runtimeruntime 怎么是面向对象特性的基石?我们知道面向对象有3大特性:封装,继承,多态。OC类是不能直接编译成汇编语言的,需要先编译成C语言,而这里的C语言是用 runtime 来实现的。封装:对数据和操作整合成一个有机整体。// 我们可以看到添加属性和方法用到了 runtime 的 API stat...原创 2019-05-29 20:53:34 · 180 阅读 · 0 评论 -
关联的苹果实现
关联的苹果实现参考转载 2019-06-16 22:33:04 · 209 阅读 · 0 评论