1.協議的定義
@protocol 協議名稱
//方法宣告列表
@end;
2.如何遵守協議
(1)類遵守協議
@protocol 類名:父類名 《協議名稱1,協議名稱2>
@end
(2)協議遵守協議
@protocol 協議名稱 《其他協議名稱》
@end;
3.協議方法宣告中的關鍵字
(1)required (預設)要求實現,若沒有實現則警告但不報錯
(2)optional 不要求實現
4.定義變數時遵守協議的限制
類名《協議名稱》 *變數名 nsobject<.myprotocol> *obj;
id 《協議名稱》 變數名 id <.myprotocol> obj1;
5.property中宣告的屬性也可以做遵守協議的限制
@property (nonatomic ,strong ) 類名《協議名稱》 *屬性名;
@property (nonatomic ,strong ) id《協議名稱》 屬性名;
6.協議本身寫在.h標頭檔案中,但也可以定義在任何地方。當這個協議只有這個類使用遵守時,一般把協議寫在這個類裡邊,當這個協議需要多個類去實現時,就寫在外邊單獨的檔案中。
IOS 雜筆 3 property引數
1 記憶體管理相關引數 retain 對物件release舊值,retain新值 適用於oc物件型別 assign 直接賦值 預設,適用於非oc物件型別 copy release舊值,copy新值 2 是否要生成set方法 若為唯讀屬性,則不生成 readonly 唯讀,只會生成getter的宣告和...
IOS 雜筆 14(被人遺忘的owner)
owner在開發中現在已經很少用了 有興趣的童鞋可以看看 我們遇到owner通常是在類似 nsbundle mainbundle loadnibnamed food owner nil options nil lastobject 中遇到的。我們一般的做法是直接把owner設定為self 通常是咋自...
String學習雜筆
一 字串轉換編碼 public staticstring translate catch exception e returnresult string byte bytes,string charsetname 把位元組陣列轉為字串,第乙個引數是位元組陣列,第二個引數是字元編碼。getbytes ...