跳到主要内容

Objective-C 知识体系概览

问题​

Objective-C 的核心知识包含哪些?面试中重点考察什么?

答案​

为什么还需要学 OC?​

尽管 Swift 是 Apple 主推的语言,但 OC 在 iOS 开发中仍然重要:

  1. 存量代码:大量商业项目仍有大量 OC 代码
  2. 系统框架:UIKit、Foundation 等底层用 OC 写的
  3. Runtime:理解 OC Runtime 是深入 iOS 的基础
  4. 混编项目:Swift 与 OC 混编是常态

知识体系​

面试重点分布​

知识点面试频率难度
Runtime 基础⭐⭐⭐⭐⭐中
消息机制与转发⭐⭐⭐⭐⭐高
Category & Extension⭐⭐⭐⭐中
KVC / KVO⭐⭐⭐⭐中
Block⭐⭐⭐⭐⭐高
内存管理⭐⭐⭐⭐⭐高
属性与修饰符⭐⭐⭐⭐低

学习路径​

推荐阅读顺序
  1. Runtime 基础 → 理解 isa、类对象、元类对象
  2. 消息机制 → objc_msgSend 的查找过程
  3. Block → Block 类型、内存管理、循环引用
  4. KVC / KVO → 底层原理(isa-swizzling)
  5. Category → 加载时机、方法覆盖
  6. 内存管理 → ARC 规则、Autorelease Pool
  7. 属性 → 修饰符语义

相关链接​