SEL选择器
SEL选择器是一个变量类型,这个类型写作SEL。SEL的变量装载的是”成员方法”,更准确的说,装载的是”消息”,有点类似于函数指针。与普通对象发送消息的区别在于编译器不会验证是否声明这个方法,直接向对象发送消息,但在实际中最好先验证一下对象是否存在或实现了该方法,以保证代码的安全性,避免出现错误。

SEL选择器的语法

把一个字符串转换成SEL数据类型

判断某个类是否存在某个方法

判断一个对象是否实现了某个方法


如果某个类不存在某个方法或没有实现某个方法,当这个类的实例化对象使用performSelector:去调用该方法,程序就会出错


网友评论