美文网首页
RunTime 简单总结

RunTime 简单总结

作者: Poison_19ce | 来源:发表于2017-10-13 18:47 被阅读0次

什么事runtime

runtime是动态运行时语言,oc是通过运行时确定对象的类型,使用c与汇编语言构成

oc主要依靠msg_send,消息发送机制 

1、关联对象

关联对象类型                                                                       等价于

OBJC_ASSOCIATION_ASSIGN                                           assign

OBJC_ASSOCIATION_RETAIN_NONATOMIC                    nonatomic,retain

OBJC_ASSOCIATION_COPY_NONATOMIC                       nonatomic,copy

OBJC_ASSOCIATION_RETAIN                                            retain

OBJC_ASSOCIATION_COPY                                               copy

通过下列方法管理

void objc_setAssociatedObject(id object, void*key,id value, objc_AssociationPolicy policy);//关联对象  static void *key  设置关联的对象值 关联类型

id objc_getAssociatedObjcet(id object,void *key);//关联对象  static void *key(同上)

removeAssociatedObjects(id object); //移除

2、方法互换

Method 定义一个接收获取到方法的对象

class_getInstanceMethod(Class aClass, SEL aSeletor);//用来获取要调用的方法  可以使用第二次获取与其互换的方法

void method_exchangeImplementations(Method m1,Method m2);//获取到两个方法之后调用此方法 就可以将两个方法互换

3、获取类方法、实例方法、成员变量等

isa指针 指向 类

IMP指针 指向 方法

ivar指针 指向 成员变量

相关文章

网友评论

      本文标题:RunTime 简单总结

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