第 7 章 使用協(xié)議

第 7 章 使用協(xié)議
7.1 優(yōu)先使用組合而不是繼承
BusinessLogic
NetworkConnector
7.1.1 了解為什么不需要多繼承
會(huì)發(fā)生多義性
7.1.2 理解協(xié)議如何解決問(wèn)題
7.1.3 記錄期望別人實(shí)現(xiàn)的接口
7.2 在對(duì)象中實(shí)現(xiàn)協(xié)議
7.2.1 聲明協(xié)議
@protocol
實(shí)現(xiàn)該協(xié)議的類不僅需要實(shí)現(xiàn)其所聲明的方法,而且也需要實(shí)現(xiàn)所繼承的任何協(xié)議的方法。
關(guān)鍵字 @required
協(xié)議不能有成員變量。因此,在協(xié)議聲明中沒(méi)有成員變量的位置。
7.2.2 聲明一個(gè)類實(shí)現(xiàn)了協(xié)議
7.2.3 聲明一個(gè)必須實(shí)現(xiàn)協(xié)議的對(duì)象
7.2.4 正式協(xié)議和非正式協(xié)議
7.2.5 確定一個(gè)對(duì)象是否實(shí)現(xiàn)了可選方法
@protocol(NetworkClient)
7.2.6 避免協(xié)議循環(huán)依賴
7.3 協(xié)議使用示例
7.4 小結(jié)
本章介紹了 Objective-C 中強(qiáng)大的分離機(jī)制—協(xié)議。利用協(xié)議,你能夠編寫復(fù)用性更高的代碼,從而使得組件同具體實(shí)現(xiàn)分離。通過(guò)協(xié)議,你可以說(shuō)“我不關(guān)注對(duì)象的類型,只要你實(shí)現(xiàn)了該接口,我就會(huì)和你交互”。協(xié)議是 Objectie-C 中的關(guān)鍵技術(shù)。協(xié)議使得 Objective-C 有別于且優(yōu)于其他大多數(shù)語(yǔ)言。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容