OC对象结构底层原理

2019-05-09  本文已影响0人  iOS白水
image.png
+ (Class)class{ 
     return self;
 }
 - (Class)class{
     return object_getClass(self); 
}
//
object_getClass(id obj){
  if(obj){  
      return obj->getIsa();
   }
  else {
      return Nil;
   }
 }

总结
[[xx alloc] init] 生成 三种对象 instance 、class、meta-class
1、instance的isa指向class
2、class的isa指向meta-class
3、meta-class的isa指向基类的meta-class(注意是基类)
[instance class]与object_getClass[instance] 是一样看如下代码

上一篇 下一篇

猜你喜欢

热点阅读