定義乙個student類
#import
//協議studentprotocol
@protocol
studentprotocol
@property (nonatomic,assign) nsinteger age;
-(void) fun1;
@end
//student類遵循協議studentprotocol
@inte***ce
student : nsobject
@end
//類目
@inte***ce
student (mycatagory)
@property (nonatomic,strong) nsstring *name;
-(void) fun2;
@end
//延展
@inte***ce
student ()
@property (nonatomic,strong) nsstring ****;
-(void) fun3;
@end
#import "student.h"
//倒入標頭檔案objc/runtime.h實現objc_……方法
#import
@implementation
student
//協議studentprotocol的方法實現
@synthesize age = _age;
-(void) fun1
//延展的實現
@synthesize *** = _***;
-(void) fun3
@end
//類目的實現
@implementation
student (mycatagory)
//在類目中下面語法有誤,不通過
//@synthesize name = _name;
//寫setter方法
-(void) setname:(nsstring *)name
//寫getter方法
-(nsstring *) name
-(void) fun2
@end
OC 類目延展協議
目錄 一 類目 什麼是類目?類目 也稱類別 category 是一種為現有類新增新方法的方式。類目和乙個類的實現非常相似,只是語法稍有不同 類目的語法 類目的特點 為什麼我們要使用類目?類目例項 現在我們要對nsstring增加新的方法用於比較兩個字串的大小,告訴使用者誰大。第一步 建立類目 第二步...
類目 延展 協議
1.類目 類目就是為已存在的類新增新的方法。但是不能新增例項變數。比如系統的類,我們看不到他的.m檔案,所以沒有辦法用直接新增方法的方式去實現。inte ce nsmutablearray sort 為nsmutablearray類新增sort方法,sort就是類目名,做到見名知意 void inv...
延展 協議 類目
一.延展 1.延展以 inte ce開頭,然後寫當前延展的類名,類名後加乙個 到 end結束 2.一般延展會寫在自己寫的.m檔案中,把一些不想讓外部呼叫的屬性放在延展裡,這樣這條屬性只能夠在類的內部使用,外部使用不了,盡最大可能保護當前類的安全 3.類目一般是給看不見.m的檔案進行擴充套件,延展一般...