iOS Runtime面試題(一個objc對象的isa的指針指向什麼?有什麼做用?)

一個objc對象的isa的指針指向什麼?有什麼做用?面試

指向他的類對象,從而能夠找到對象上的方法ide

詳解:下圖很好的描述了對象,類,元類之間的關係:
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)。blog

熱文推薦

2019 全網 iOS 面試題以及答案總結!

相關文章
相關標籤/搜索