respondsToSelector
methodSignatureForSelector
forwardInvocation
class_replaceMethod 方法就是动态替换Method的函数,原型 IMP 。
class_getInstanceMethod 得到类的实例方法
class_addMethod 可以加入新的方法到一个类里
先执行主类的方法,再执行block里面的方法。
[[self rac_signalForSelector:@selector(aab)] subscribeNext:^(RACTuple * _Nullable x) {
NSLog(@"%@", x);
}];
[self aab];
class_addProtocol(self.class, protocol);
if ([self conformsToProtocol:@protocol(UIAlertViewDelegate)]) {
NSLog(@" conforms");
}else {
NSLog(@"nono conforms");
}
class_addProtocol([self class], @protocol(UIAlertViewDelegate));
if ([self conformsToProtocol:@protocol(UIAlertViewDelegate)]) {
NSLog(@" conforms");
}else {
NSLog(@"nono conforms");
}








网友评论