9.类的延展

Posted

tags:

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

Category的作用
Category:也叫分类,类目。是为没有源代码的类扩充功能
扩充的功能会成为原有类的一部分,可以通过原有类或者原有类的对象直接调用,并且可继承。
但是该方式只能扩充方法,不能扩充实例变量
类名的文件名为原类名+文件名
如:
技术分享

创建步骤:
技术分享

File:文件名
File Type:文件的类型
Class:文件扩展类型
技术分享
创建好之后,会自动创建.h文件和.m文件。
在.h文件中声明添加的方法,在.m文件中实现方法



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

语法格式:
Extension的语法格式和Category很相似,相当于把Category 的.h?件挪到了原始类的.m?件中。

技术分享


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

协议:一堆方法的声明,只有.h文件,协议的定义以@protocol开始,以@end结束
技术分享

执行协议的类要接收协议,写在NSObject后面的<>内部
技术分享


以上是关于9.类的延展的主要内容,如果未能解决你的问题,请参考以下文章

OC 中 类目延展和协议

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

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

OC第九节 类的扩展

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

OC-类目延展协议