美文网首页
iOS中分类(Category)和类扩展(Extension)的

iOS中分类(Category)和类扩展(Extension)的

作者: Mr_滑 | 来源:发表于2021-12-01 17:34 被阅读0次

一、分类(Category):

分类(Category)它是表示一个指向分类的结构体的指针。原则上它只能增加方法,不能增加成员(实例)变量。Category 是表示一个指向分类的结构体的指针。

这个结构体主要包含了分类定义的实例方法与类方法,其中instance_methods 列表是 objc_class 中方法列表的一个子集,而class_methods列表是元类方法列表的一个子集。
但在这个结构体里面,没有属性列表!

二、类扩展(class extension)

Extension是Category的一个特例。类扩展与分类相比只少了分类的名称,所以称之为“匿名分类”。

1、类扩展不仅可以增加方法,还可以增加实例变量(或者属性)
2、类扩展所声明的方法必须依托对应类的实现部分来实现。

相关文章

网友评论

      本文标题:iOS中分类(Category)和类扩展(Extension)的

      本文链接:https://www.haomeiwen.com/subject/hmnsxrtx.html