OC对象的本质4---isa指针 和 superclass指针

2020-04-08  本文已影响0人  大鹅ne

-----------isa指针


Screen Shot 2020-04-08 at 10.00.42 PM.png

🌟instance的isa指向class
当调用对象方法时通过instance的isa找到class,最后找到对象方法的实现进行调用
🌟class的isa指针指向meta-class
当调用类方法时通过class的isa指针找到meta-class,最后找到类方法的实现进行调用

-----------class对象的superclass指针

@interface Person : NSObject
@end
@interface Student : Person
@end
Screen Shot 2020-04-08 at 10.17.37 PM.png

🌟当Student的instance对象调用Person对象方法时,会先通过isa找到Stuednt的class,
然后通过superclass找到Pesron的class,最后找到对象方法的实现进行调用

---------meta对象的superclass指针

@interface Person : NSObject
@end
@interface Student : Person
@end

🌟当Student的class要调用Person的类方法时,会先通过isa找到Student的meta-class,
然后通过superclass找到Person的meta-class,最后找到类方法的实现进行调用

上一篇 下一篇

猜你喜欢

热点阅读