OC 中 类目延展和协议

Posted 陈博文

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OC 中 类目延展和协议相关的知识,希望对你有一定的参考价值。

Category : 也叫分类,类目。

  *是 为没有源代码的类 扩充功能

  *扩充的功能会成为原有类的一部分,可以通过原有类或者原有类的对象直接调用,并且可继承

  *该方法只能扩充方法,不能扩充实例变量

  *添加的类目是一对 .h .m 文件,文件名为 原有类名 + 分类名

 

Extension :延展

  *为能够获得源代码的类添加私有的实例变量和方法

  *注意:延展操作的类是能够获得源代码的类(具有 .m 文件的类)

  *通过延展定义的方法属于私有方法,外界是没有访问权限的,只能在当前类的 .m 文件中访问

  *相当于把  Category 的 .h 文件写在原始类的 .m 文件中 ,只有 .h 文件

 

协议 : 这是一种间接扩充功能的方式,协议中只有一堆方法的声明,使用时需要服从协议,实现协议中的方法来扩充功能,而且只能扩充方法,不能扩充实例变量。局限于必须要拥有该类的源代码。

以上是关于OC 中 类目延展和协议的主要内容,如果未能解决你的问题,请参考以下文章

iOS设计之--OC学习总结之延展类目协议

Objective-C中的类目,延展,协议

iOS类目延展和协议

类目,延展,协议的基本概念

Objective-C中的类目(Category),延展(Extension)

OC第九节 类的扩展