跳到主要内容

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. 属性 → 修饰符语义

相关链接