我有一个Class的两个类别(c1和c2),它们都有相同的方法 - (无效)运行 当我向此方法发送消息时,为什么响应者始终是c2类别? 我认为他们应该有同样的优先权。
答案 0 :(得分:1)
类中的方法按照查找顺序添加到类中。与现有方法具有相同名称(选择器)的方法将简单地将先前的实现替换为新找到的方法。
不保证处理类别的顺序,所以永远不要依赖它。
答案 1 :(得分:0)
最后一个类只有一个名称为运行的实现。具有此名称的确切实现取决于编译器。其他实现将有一些其他名称。你可以在运行时查看方法来解读我的意思。