iOS判断某个类是否可以调用某个类方法
2014-11-19 14:29
441 查看
实际编码过程中,在使用代理的时候,经常会对代理是否可调用某个方法进行判断,防止崩溃,如
if([self.delegate
respondsToSelector:@selector(sel)]){
[self.delegate sel];
)
上述情况是某个类的实例是否可以调用某个类的实例方法,如果某些情况下需要判断某个类是否可以调用某个类方法该如何判断呢?
以NSString为例进行说明:
- (BOOL)respondsToSelector:(SEL)aSelector 是NSObject的实例方法,因此貌似不能直接使用 [NSString
respondsToSelector:@selector(stringWithFormat:)]进行判断,实际尝试也是不能自动补全代码,如下图:
忽略代码补全,直接键入代码,如下图:
编译无报错,运行后直接打印~~~1,证明可通过上述方法对一个类是否可以调用某个类方法进行判断.
if([self.delegate
respondsToSelector:@selector(sel)]){
[self.delegate sel];
)
上述情况是某个类的实例是否可以调用某个类的实例方法,如果某些情况下需要判断某个类是否可以调用某个类方法该如何判断呢?
以NSString为例进行说明:
- (BOOL)respondsToSelector:(SEL)aSelector 是NSObject的实例方法,因此貌似不能直接使用 [NSString
respondsToSelector:@selector(stringWithFormat:)]进行判断,实际尝试也是不能自动补全代码,如下图:
忽略代码补全,直接键入代码,如下图:
编译无报错,运行后直接打印~~~1,证明可通过上述方法对一个类是否可以调用某个类方法进行判断.
相关文章推荐
- 如何判断一个类是否支持某属性和方法以及如何判断IOS的版本
- [C#]调用方法判断一个整数是否为质数
- IOS 开发中判断字符串是否为空字符的方法
- js里面是没有Trim()这个方法的可以用以下的形式来判断是否输入的值为空
- 2014-03-31工作日志:判断文件是否存在可以使用GetFileAttributes 方法。
- ajax异步判断网站是否可以访问到的解决方法
- python 判断对象是否可以调用(callable)
- IOS开发中判断字符串是否为空字符的方法
- 注册JQuery使用ajax调用后台方法,判断用户名、邮箱是否存在,并显示隐藏提示
- static方法内部是否可以发出对非static方法的调用?
- HashSet 中储存先判断对象的hash值 如果一样 在调用 对象equals方法判断是否是同一个对象
- 【iOS开发】判断NSString中的字符是否为中文的正确方法
- HashSet 重写类的equals方法可以根据类的关键字段判断是否相等
- 判断一个类是否支持某属性和方法以及如何判断IOS的版本
- 如何判断一个类是否支持某属性和方法以及如何判断IOS的版本
- iOS开发之回调delegate的方法时判断delegate是否已经被释放
- asp.net 调用自定义类的方法 判断用户是否登录
- IOS 判断设备是否可以打电话
- IOS开发中判断字符串是否为空字符的方法
- IOS系统照相机的调用, 判断隐私设置是否授权,并弹出一个alert