知识点总结iOS 进阶

iOS 扩展(Extension)

2019-04-10  本文已影响4人  飞不越疯人院

1. 日常开发中用Extension做什么?

Extension:扩展, 延展, 匿名分类;放在.m文件中;

  1. 声明私有属性; (不对子类暴露)
  2. 声明私有方法;
  3. 声明私有成员变量;

2. 分类(Category)和扩展(Extension)区别?

分类(Category) 扩展(Extension)
运行时决议 编译时决议
有单独的.h.m文件 以声明的方式存在, 寄生于宿主类的.m文件
可以为系统类添加分类 不能为系统类添加扩展
看不到源码的类可以添加分类 没有.m源码的类无法为其添加扩展
上一篇下一篇

猜你喜欢

热点阅读