美文网首页iOS DeveloperiOS 开发
Runtime 简单粗暴详细的解释

Runtime 简单粗暴详细的解释

作者: 语歌 | 来源:发表于2016-06-02 00:46 被阅读985次

    runtime    

    读到这里有demo哦!!!  觉得有用请多多关注!!!多多喜欢!!!

    是OC底层的一套C语言的API(引入或),编译器最终都会将OC代码转化为运行时代码,通过终端命令编译.m文件:clang -rewrite-objc xxx.m可以看到编译后的xxx.cpp(C++文件)。

    首先我们编写的OC语言在编译的过程中是由OC转换成C语言在转换成汇编语言然后在转换成机器码

    直接接触运行时代码的操作就更接近事物的本质,就好比如说你精通了汇编之后,能够对接触最核心的;直接来例子:

    老生常谈

    利用runtime可以做一些OC不容易实现的功能

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

    创建一个Person类;

    +(void)Eat;

    +(void)Drink;

    实现代码:

    然后在实现函数里面:

    需要继承:#import<objc/runtime.h>

    有个错别字不知道细心的你发现了木有^_^

    这里用运行时说明:

    //获取类的类方法

    Methodm1= class_getClassMethod([Personclass], @selector(Eat));

    //开始交换方法实现

    method_exchangeImplementations(m1,m2);

    ………………

    明天继续更新 运行时博大精深

    本文demo地址:https://github.com/AnneBlair/Runtime-.git

    相关文章

      网友评论

        本文标题:Runtime 简单粗暴详细的解释

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