Category-分类

ios中的对象类型分为三类:

实例对象:存放成员变量的具体指;
类对象:存放对象方法,属性,成员变量,协议信息等;
元类对象:存放类方法;
分类是利用runtime 动态将分类的方法合并到类对象,元类对象中,是在程序运行的时候进行合并的,创建的分类的对象方法会存储在类对象里,创建的类方法会存储在元类对象里。
生成的分类的C++结构如下:


image.png

由分类的结构可以看出,并没有存放成员变量的数组,所以分类是不能直接添加成员变量的。

分类中的方法整合到类对象或者元类对象的过程:

最初的指针指向类对象的方法列表,当给这个类添加分类后,会把最初的指针指向的方法列表往后移,然后把指向分类的指针对象放到最初的指针前面。

分类的加载处理过程

1,通过Runtime加载某各类所有的category数据
2,把所有category的方法,属性,协议数据合并到一个大数组中(最后参与编译的分类数据,会放在数组的前面)
3,将合并后的分类数据(方法,属性,协议)插入到类原来的数据的前面。

类扩展,相当于把写在m文件中的一些属性,成员变量的声明,方法的声明直接剪切到h文件中,在编译的时候就已经把属性,实例方法等放到类对象中,把类方法放到元类对象中了

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,240评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,328评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,182评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,121评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,135评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,093评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,013评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,854评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,295评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,513评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,678评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,398评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,989评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,636评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,801评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,657评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,558评论 2 352

推荐阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,096评论 1 32
  • 1.ios高性能编程 (1).内层 最小的内层平均值和峰值(2).耗电量 高效的算法和数据结构(3).初始化时...
    欧辰_OSR阅读 29,370评论 8 265
  • 戊戌秋始,省运尾声, 余过陈县,龙湖稍停。 秋阳杲杲,素马当空。 足落湖畔,目满荷风。 岸柳轻摆,草蒲曳盈。 扁舟...
    太极草堂程利華阅读 675评论 0 2
  • 前天发了波游玩的照片后好多盆友来问我尊享卡是怎么回事儿,怎么玩法,还有要攻略的,今天得空,随手写几句。ps:这不是...
    凯风自南1029阅读 509评论 0 0
  • 有些人在人生的岔路口,总是会不知所措,不知如何选择,在遇到选择和疑惑的时候,往往会放弃挑战难度较大的,去选择相对安...
    澜绣阅读 618评论 0 0