在 Objective-C 中, 方法的调用流程可以分为两个层面来理解:类继承关系的调用顺序(开发者层面)和 Runtime 内部的执行流程(底层原理层面)。 以下是详细的解析: --- 1. 类继承关系的调用顺序 (Surface Level) 当一个对象的引用计数变为 0 时,系统会调用 。在类的继承体系中,调用顺序与 方法相反: 1. 子类 (Subclass) 的 首先被调用:先释放子类特有的资源。 2. 父类 (Superclass) 的 随后被调用:子类处理完后,自动向上调用父类的清理逻辑。 3. 根类 (NSObject) 的 最后被调用:完成最终的内存回收。 ARC 与 MRC 的区别: MRC (Manual Reference Counting): 必须在 方法的最后一行显式调用 。 ARC (Automatic Reference Counting): 严禁显式调用 。编译器会自动在代码末尾插入调用父类 的代码。 --- 2. Runtime 内部执行流程 (Deep Dive) 这是面试或深入学习中最核心的部分。基于 Apple 开源的 ObjC Runt...