Objective-C中的Category(分类)

来源:互联网 发布:linux安装rpm文件 编辑:程序博客网 时间:2024/06/06 01:08

Objective-C中的Category(分类)


1 Category概念:动态的为已经存在的类添加新的行为(方法)


2 Category(分类)创建的方法


(1)通过Xcode生成分类

(2)可以手动生成分类,在头文件里面生成2个@interface

例如:

在Student.h文件中@interface Student:NSObject-(void)test1;@end下面是Student的分类,test为分类的名称@interface Student(test)-(void)test2;@end在Student.m文件中@implementation Student-(void)test1{NSLog(@“test1…”);}@end@implementation Student(test)-(void)test2{NSLog(@“test2…”);}@end

3 Category(分类)的说明


(1)()代表着一个分类

(2)()中的Test代表着分类的名称


(3)分类只能扩展方法,不能增加成员变量


(4)使用Category对类进行扩展时不需要创建子类

Category使用简单的方式,实现了类的相关方法的模块化,把不同的类方法分配到不同的分类文件中


4 Category的使用场景

(1)在定义类时的某些情况下(例如需求变更),你可能想要为其中的某个或几个类中添加新的方法

(2)一个类中包含了许多不同种类的方法需要实现,而这些方法需要不同团队的成员来实现

(3)在使用基础类库时,有可能希望这些类实现一些自己需要的方法,比如NSString+JSON.h,为NSString这个类拓展一些解析JSON的方法。




0 0
原创粉丝点击