跳到主要内容

Runtime 与底层知识体系概览

问题

iOS Runtime 底层涉及哪些核心知识?

答案

知识全景

学习路线

推荐顺序
  1. isa 与类结构 → 理解对象的本质
  2. 方法缓存 → 散列表优化
  3. 消息转发 → 三次补救机会
  4. Method Swizzling → 运行时方法替换
  5. 关联对象 → Category 添加属性
与 Objective-C 的关系

Runtime 相关知识主要涉及 Objective-C 底层。Swift 类如果继承自 NSObject,也会走 ObjC Runtime 消息机制。纯 Swift 类(不继承 NSObject)使用虚函数表(VTable)分发,不经过 objc_msgSend

相关链接