- 通过1和2,可以实现给实例发送方法,通过2可以查找父类实现的方法
- 通过3和4,可以给类发送方法,比如 [NSArray alloc],通过4,可以查找父类实现的方法
- 关于5,在runtime的设计中,objc_class 是继承 objc_object 的。它们都需要isa指针来保存实例的数据(比如类的类型,是否为 tag 指针,方法列表)。所以,类对象需要有 isa 指针,isa 指针会指向父类的 isa 指针,根元类的 isa 指针指向了根元类。最终,所有的元类的isa指针指向了根元类。
- 通过2,4,6,所有创建的根类的子类。无论是实例还是元类,都可以知道通过查找superclass的方式判断出它们继承自根类。
Runtime中的类与内省
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- 原文出处:南峰子的技术博客 Objective-C语言是一门动态语言,它将很多静态语言在编译和链接时期做的事放到了...
- 本文转载自:http://southpeak.github.io/2014/10/25/objective-c-r...