iOS Runtime面试题(一个objc对象的isa的指针指向什么?有什么作用?)

烈酒焚心 提交于 2019-11-29 19:03:52

一个objc对象的isa的指针指向什么?有什么作用?

指向他的类对象,从而可以找到对象上的方法

详解:下图很好的描述了对象,类,元类之间的关系:
iOS Runtime面试题(一个objc对象的isa的指针指向什么?有什么作用?)

图中实线是 super_class指针,虚线是isa指针。

1.Root class (class)其实就是NSObject,NSObject是没有超类的,所以Root class(class)的superclass指向nil。
2.每个Class都有一个isa指针指向唯一的Meta class
3.Root class(meta)的superclass指向Root class(class),也就是NSObject,形成一个回路。
4.每个Meta class的isa指针都指向Root class (meta)。

热文推荐

2019 全网 iOS 面试题以及答案总结!

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!