ios底层原理

OC对象的结构信息

2019-04-02  本文已影响0人  春风依旧

OC对象的是结构是什么样的?? 信息是怎么存储的?? 结构之间是怎么进行联系的?? 等等,我在研究的时候通常都会进行思考,并进一步提升

一、isa指针:

isa之间的关系.png

1、instance(实例对象)的isa指向class(类对象)
2、当调用对象方法是,通过instance(实例对象)的isa找到class(类对象),最后找到对象方法的实现进行调用
3、class(类对象)的isa指向meta-class(元类):
        当调用类方法时,通过class(类对象)的isa找到meta-class(元类对象),最后找到类方法的实现进行调用。

二、class(类对象)的superclass指针:

类对象的[图片上传中...(元类的superclass.png-cd86b0-1554219303108-0)] superclass.png

当Student的instance(实例对象)要调用Person的对象方法时:

三、meta-class(元类对象)的superclass指针:

元类的superclass.png

当Student的class(类对象)要调用Person的类方法时:

上一篇下一篇

猜你喜欢

热点阅读