iOS开发之oc(九)--Category-分类

需求:如何在不改变原来类模型的前提下,给类扩充一些方法?有2种方式

 >继承

>分类(Category)

(一)了解Catagory

1.
Catagory,可以动态的为已经存在的类添加新的行为(方法),功能扩展,使用Category对类进行扩展时,不需要创建子类.
Category使用简单的方式,实现了类的相关方法的模块化,把不同的类方法分配到不同的分类文件中

category(分类、类别、类目)--(用来功能分类,分工,利于开发,一般以功能命名)

2.示例

//声明

@interface    类名(分类名称@end

 //实现

@implementation    类名(分类名称@end

 

3.通过 New File 创建,-->OS X(下的Cocoa)-->Objective-C category-->

注意:#import "Dog+YY.h”是说清楚分类叫什么名称

/*

 分类的作用:在不改变原来类内容的基础上,可以为类增加一些方法

 

 使用注意:

 1.分类只能增加方法,不能增加成员变量

 2.分类方法实现中可以访问原来类中声明的成员变量

 3.分类可以重新实现原来类中的方法,但是会覆盖掉原来的方法,会导致原来的方法没法再使用

 4.方法调用的优先级:分类(最后参与编译的分类优先) --> 原来类  --> 父类

 */

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。