OC 多个 category 重写同一方法覆盖的规律?

2017-12-15  本文已影响25人  RYANIM

OC 提供的 category 机制会用 category 实现的重写方法覆盖原对象的方法实现, 因为 category 在对象后加载,导致 category 的 method 实现在 method 栈的上方,所以覆盖了原对象的方法实现.

那如果多个 category 重写同一个方法会怎么样呢? 编译器是按照什么顺序来加载 category 的, 抑或是随机顺序?想要通过了解编译方式来了解这个机制.

试了一下,多个 category 的确是按照编译的顺序来覆盖方法的. 编译顺序可以从 build phases--compile source 中查看.

上一篇下一篇

猜你喜欢

热点阅读