iOS協議的學習筆記swift版

2021-07-23 16:14:58 字數 641 閱讀 8219

協議,協議就是類成員函式的引用,用於類之間傳值.

形象的說就是有需求的類沒有可實現需求的成員函式,委託有實現需求的成員函式的類**實現需求,可以簡化**,使**便於維護,使用的過程就是引用,引用只看物件,所以需要對協議進行宣告

格式protocol protocol

自定義型別,引用型別可以建立引用

類名:繼承,引用名

class dog:nsobject, protocol

func run() -> void

}協議引用了dog類中bark的方法

class bigdog () -> void

func barkloud() -> void

}協議的實現

let littledog = dog() 建立小狗的物件

let bigdog = bigdog() 建立大狗的物件

bigdog.delegate = littledog 建立指向小狗bark函式的引用

bigdog.bark() 引用littledog的函式實現功能

p.s 協議只能引用協議中出賣的函式,未被出賣的函式不能引用,只有**類中可以新增協議名,委託類只需要進行引用就可以

注意實際工作中協議一般都是逆向使用:即**類傳遞資料,委託類對資料進行管理.

Swift 學習筆記 協議

如果類含有父類,則應當將父類放在所有的協議之前。協議 protocol oneprotocol或者 var argumentone int 唯讀 var argumenttwo int 讀寫 static var argumentclass int 類 class person oneprotoco...

Swift學習筆記十六 協議

protocol 協議 用於統一方法和屬性的名稱,而不實現不論什麼功能。協議可以被類。列舉。結構體實現。滿足協議要求的類,列舉,結構體被稱為協議的 遵循者。遵循者須要提供 協議指定的成員,如屬性,方法,操作符,下標等。一 協議的基本的語法 咱們還是先上 吧 protocol human var is...

Swift學習筆記 協議擴充套件

在swift中進行物件導向程式設計時,盡量使用協議和泛型,而不是類繼承,因為過深的繼承層次很容易讓 充滿難以理解的類。前面我們介紹過了類的擴充套件,協議的擴充套件也是類似的,協議擴充套件可以新增現有的計算屬性和方法,不能新增儲存屬性。擴充套件不會增加協議的需求。下面的 中,所有實現worker協議的...