美文网首页
Runtime的底层实现

Runtime的底层实现

作者: 随州小成 | 来源:发表于2017-10-25 16:32 被阅读0次

    任何方法调用的本质: 其实是发送了一个消息, 用runtime发送消息, OC底层实现通过runtime实现

    最终生成消息机制, 编译器做的事情, clang -rewrite-objc main.m 查看最终生成代码

     使用runtime创建一个NSobject对象的步骤:

    1. 必须要导入头文件

    在xcode6之前, 苹果运行使用objc_msgSend是有参数提示的, xcode6之后苹果不推荐我们使用runtime, 可以通过xcode的buile setting, 搜索msg把runtime设置为NO就可以使用runtime了

    2. 使用runtime调用私有方法

    下面我定义了一个person类继承于NSObject, 在.m文件里面直接实现了-(void)eat{}方法, 如果按照我们平时的习惯, 直接调用 [p eat] 方法会报错的, 但是使用runtime方法调用则不会

    相关文章

      网友评论

          本文标题:Runtime的底层实现

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