一,类别是一种为现有的类添加新方法的方式。
二,类别的局限性。
1,无法向类中添加新的实例变量。类别没有位置容纳实例变量。
2,名称冲突,即类别中的方法与现有的方法重名。当发生名称冲突时,类别具有更高的优先级。你的类别名称将完全取代初始方法,从而无法再使用初使方法。有些编程人员在自己的类别方法名中增加一个前缀,以确保不发生名称冲突。
三,选择器。
1,选择器只是一个方法名称,但它以Objective-C运行时使用的特殊方式编码,以快速执行查询。你可以使用@selector()预编译指令选择器,其中方法名位于圆括号中。
2,NSObject提供了一个名为respondsToSelector:的方法,该方法询问对象以确定其是否能够响应某个特定的消息。
参考资料:《Objective-C基础教程》