自己参考各种资料整理的runtime 

 

首先,我们来介绍以下runtime是什么?

runtime 简称运行时,是一套底层的C语言API.其实就是在程序运行时会触发的一些机制,我们都知道OC是只有在运行时才会绝定调用哪个函数,而不是在编译时.属于动态调用过程,所以OC也是一门动态语言.而oc得每个方法的执行,其实就是发送了一个消息,其实就是把我们的代码转化成了runtime的C语言代码执行,

 例: [target doSomething];

     会被转化成  

   objc_msgSend(target, @selector(doSomething));

OC中把一切都设计成了对象,其实类也是也个对象,并且在runtime中有那个结构体表示;

那么runtime有什么用处呢?

1> 能动态产生一个类、一个成员变量、一个方法

2> 能动态修改一个类、一个成员变量、一个方法

3> 能动态删除一个类、一个成员变量、一个方法

 

posted on 2016-08-11 07:52  Yevgeni  阅读(60)  评论(0编辑  收藏  举报