A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© wangganghua 中级黑马   /  2015-9-19 00:22  /  1416 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

1,类的本质其实也是一个对象(类对象,Class类型);

类对象
*类对象在程序运行时一直存在。
*类对象是一种数据结构,存储类的基本信息:类大小,类名称,类的版本以及消息与函数的映射表等
*每一个对象都包含一个指向其类对象的isa指针。



2、类对象如何获取
通过实例对象获取
Dog *d1 = [Dog new];
Dog *d2 = [Dog new];
Class c =   [d1 class];
Class c2 = [d2 class];

通过类名获取(类名其实就是类对象)
Class c3 = [ Dog  class ];

因为类对象在整个程序中只存在一份,
所以 c = c2 = c3

/**程序执行过程**/

1,当程序一运行,代码就会加加载到代码区;
2,代码加载完成之后,就会调用+(void)load;方法,创建Class类型类对象;做好程序运行的准备;
3,然后找到main函数执行代码;
4,当遇到new创建对象时,通过当前类的类对象进行创建.

4 个回复

倒序浏览
顶顶顶顶顶顶顶顶顶顶顶顶
回复 使用道具 举报
顶顶顶顶顶顶顶顶顶
回复 使用道具 举报

顶顶顶顶顶顶顶顶顶顶顶顶
回复 使用道具 举报
学习学习
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马