检测实例或类方法是否有效

有两个关于 iOS SDK 的重要概念要记住:
Base SDK(基底 SDK)
这个 SDK 是用来编译应用程序。可能是最新最大的 SDK,且能存取所有新的 API。
Deployment SDK/Target(部署 SDK)
这边的 SDK 使指定你希望编译后并执行的装置 SDK 版本。
因为就事实上,编译应用是基于 Base SDK 与 Depolyment SDK 两个 SDK 编译。这取决于你正在使用的设定(装置或模拟器)。程序必须不断检查实例或类方法是否存在,否则程序会是脆弱的,因为部署的装置的 SDK 版本,不一定是最新的,也许方法会不存在。


使用NSObject的instancesRespondToSelector:类方法检测指定的selector是否存在类实例中。要确认一个类是否响应本身的类方法,需使用instancesRespondToSelector:类方法,需要版本实例是否响应方法,需使用respondsToSeletor:的实例方法.


-(BOOL) respondsToSelector: selector 判读实例是否有这样方法

+(BOOL) instancesRespondToSelector:  判断类是否有这个方法。此方法是类方法,不能用在类的对象

另,

-(BOOL) isKindOfClass: classObj判断是否是这个类或者这个类的子类的实例

-(BOOL) isMemberOfClass: classObj 判断是否是这个类的实例

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

CPLASF_lixj

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值