6.3.动态交换两个方法的实现

在程序当中,假设XiaoMing的中有test1 和 test2这两个方法,后来被Runtime交换方法后,每次调动test1 的时候就会去执行test2,调动test2 的时候就会去执行test1, 。那么,Runtime是如何做到的呢?

1.获取这个类中的两个方法并交换:

Method m1 = class_getInstanceMethod([self.xiaoMing class], @selector(test1));

交换方法之后,以后每次调用这两个方法都会交换方法的实现