黑馬程式設計師 ios protocol語法簡介

2021-07-02 18:32:34 字數 839 閱讀 2575

protocol基本用途:

可以用來宣告一大堆方法(不能宣告成員變數)

只要某個類遵守了這個協議,就相當於擁有了這個協議中的所有方法宣告

只要父類遵守了某個協議,就相當於子類也遵守了

1.協議的定義:

@protocol 協議名稱

方法宣告列表

@end

2.如何遵守協議:

乙個類遵守協議:

@inte***ce 類名 : 父類名 《協議1, 協議2>

@end

協議遵守協議:

@protocol 協議名稱 《其他協議名稱1, 其他協議名稱2>

@end

3.協議中方法宣告的關鍵字:

1>@required (預設)

要求實現,如果沒實現,會發出警告

2>@optional

不要求實現,怎樣都不會有警告

4.定義乙個變數的時候限制這個變數儲存的物件遵守某個協議:

類名《協議名稱》 *變數名;

id 《協議名稱》 變數名

nsobject *obj;

id obj;

如果沒有遵守相對應的協議,編譯器會警告

5.@property 中 宣告的屬性中也可以做乙個遵守協議的限制

@property (nonatomic, strong) 類名 (協議名稱) *屬性名;

@property (nonatomic, strong) id(協議名稱) 屬性名;

6.協議可以單獨定義在.h檔案中,也可以定義在某個類中

1>如果這個協議只用在某個類中,應該把協議定義在該類中

2>如果這個協議用在很多類中,就應該定義在單獨檔案中

黑馬程式設計師

asp.net android ios開發 net培訓 期待與您交流!map hashtable 底層是雜湊表資料結構,不可以存入null鍵和null值。該執行緒是同步的,jdk1.0出現,效率低。hashmap 底層是雜湊表資料結構,允許使用null鍵和null值。該集合執行緒是不同步的,將has...

黑馬程式設計師

1.了解反射 反射 就是通過class檔案物件,去使用該檔案中的成員變數,構造方法,成員方法。person p new person p.使用 要想這樣使用,首先你必須得到class檔案物件,其實也就是得到class類的物件。2.反射中的類 class類 成員變數 field類 構造方法 const...

黑馬程式設計師

黑馬程式設計師 j a基礎學習筆記2 一 筆記內容概述 關鍵字 識別符號 注釋 注釋的應用 常量 進製的由來 進製轉換 負數的進製 變數的介紹 變數的基本演示 型別提公升 強制轉換 字元型別運算過程 型別運算細節 算術運算子 賦值運算子。二 常用內容介紹 1.注釋內容不占用記憶體,即使新增再多的注釋...