我想在我通过[self delegate]
的对象上调用一个方法。我知道它是哪个类,所以我可以导入类并正常调用它,但我也可以使用performSelector:
,不需要导入我的类。我不需要将参数传递给方法。是的,我确实读过this。在这种情况下哪一个更好?
答案 0 :(得分:2)
直接调用该方法更具可读性。当您需要更高阶的消息传递时,应保留performSelector:
。
严格地说,您不需要导入类来向其发送消息,因为消息调度是动态的而不是静态的,尽管您将收到编译时警告,该对象可能无法响应选择器。
答案 1 :(得分:0)
一般而言,反射操作(如performSelector:
)的效率低于直接操作。不过我必须承认我对objC不是很熟悉。