OC反射机制
2017-05-23 本文已影响0人
nemoispretty
系统Foundation框架为我们提供了一些方法反射的API,我们可以通过这些API执行将字符串转为SEL等操作。
由于OC语言的动态性,这些操作都是发生在运行时的
NSStringFromSelector(SEL aSelector);
NSSelectorFromString(NSString*aSelectorName)
NSStringFromClass(Class aClass)
NSClassFromString(NSString*aClassName);
NSStringFromProtocol(Protocol *proto)
NSProtocolFromString(NSString*namestr)
常用判断方法
在NSObject类中为我们提供了一些基础方法,用来做一些判断操作,这些方法都是发生在运行时动态判断的。
// 当前对象是否这个类或其子类的实例
-(BOOL)isKindOfClass:(Class)aClass;
// 当前对象是否是这个类的实例
-(BOOL)isMemberOfClass:(Class)aClass;/
/ 当前对象是否遵守这个协议
-(BOOL)conformsToProtocol:(Protocol*)aProtocol;
// 当前对象是否实现这个方法
-(BOOL)respondsToSelector:(SEL)aSelector;