Objective-C中的Category(分類)

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的方法。




發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章