runtime --- 方法实现交换
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了runtime --- 方法实现交换相关的知识,希望对你有一定的参考价值。
方法欺骗 使用 runtime 进行两个方法的交换
+ (void)load { //获取类方法 Method olld = class_getClassMethod([self class], @selector(URLWithString:)); Method new = class_getClassMethod([self class], @selector(AZ_URLWithString:)); //交换两个方法的实现 method_exchangeImplementations(olld, new); } + (instancetype)AZ_URLWithString:(NSString *)str{ NSURL *url =[NSURL AZ_URLWithString:str]; if (!url) { NSLog(@"交换方法"); } return url; }
以上是关于runtime --- 方法实现交换的主要内容,如果未能解决你的问题,请参考以下文章