美文网首页
用 方法调配技术 调试 黑盒方法

用 方法调配技术 调试 黑盒方法

作者: bamboomoon | 来源:发表于2016-09-18 14:05 被阅读0次

    类的方法列表会把选择子的名称映射到相应的方法实现上,使得 动态消息派发系统能够据此找到应该调用的方法

    互换两个方法的实现

    //参数表示待交换的两个方法的实现
    void method_exchangeImplementations(Method m1,Method m2)
    
    //获得相应的方法的实现
    Method class_getInstanceMethod(Class aClass,SEL selector)
    
    
    //完整代码
    Method originalMethod =  class_getInstanceMethod([NSString Class],@selector(lowercaseString))
    
    Method swappedMethod =  class_getInstanceMethod([NSString Class],@selector(uppercaseString))
    
    //完成两个方法的实现的交换
    method_exchangeImpletations(originalMethod,swappedMehtod)
    

    主要作用:调试

    例如调用 NSString *s = @"this is string "; [s lowercaseString];
    打印一些东西 。就可以自己在 NSString 分类中写个方法。然后和 lowercaseString 交互。然后调用 [s lowercaseString] 就会打印一些东西了

    相关文章

      网友评论

          本文标题: 用 方法调配技术 调试 黑盒方法

          本文链接:https://www.haomeiwen.com/subject/wztgettx.html