- 由于基礎(chǔ)很差不太明白interface到底是個(gè)啥
接口上我一直不太理解,插上就通電了......通電什么意思 - 插曲
最早是真的不明白接口是啥鬼,可能太笨了.其中在使用C#的接口基于它經(jīng)歷過(guò)留言板三層架構(gòu)的封裝還是不太理解,但是直到真正理解到編程就是來(lái)解決實(shí)際問(wèn)題的時(shí)候,在我理解了protocol的時(shí)候我想我明白了,通常的兩者要有一定的交流在編程上要么直接關(guān)聯(lián)(在面向?qū)κ窃鯓拥哪兀繉?duì)象之間互相持有),要么你我有一張協(xié)議(這就是接口,它定義了一定的準(zhǔn)則),iOS下protocol的出現(xiàn)..網(wǎng)上說(shuō)呢,可能就是因?yàn)閛c的歷史interface被占用了,才出現(xiàn)的protocol.因此java oc 在使用這種都是可以相同方式的使用來(lái)達(dá)到回調(diào)的效用,那么回調(diào)到底是什么?什么回調(diào)是什么?百度一大堆全是說(shuō)的就是執(zhí)行一段函數(shù),為嘛不喜歡說(shuō)清楚,太抽象啦.這里就發(fā)生過(guò)一件趣事,在我能熟練使用oc和swift 的時(shí)候就去用java講代理模式的時(shí)候,就發(fā)生了一件糗事,我說(shuō)代理模式可以傳值,可以回調(diào).(明顯這些是接口和協(xié)議的功能嘛),關(guān)鍵特么的還講動(dòng)態(tài)代理反射想想也是關(guān)公面前耍大刀,丟人又現(xiàn)眼 - 回調(diào)解釋
回調(diào)是什么? 負(fù)責(zé)任和不負(fù)責(zé)任的解釋.執(zhí)行一個(gè)函數(shù).不負(fù)責(zé)那是對(duì)于我們這些菜鳥來(lái)說(shuō)的,因此我的理解是這樣的(是的很有可能還是有錯(cuò)的),這句話我會(huì)加上一些內(nèi)容 ,"什么時(shí)候執(zhí)行一個(gè)函數(shù)函數(shù)里面可以附帶什么信息",很好理解,什么時(shí)候當(dāng)然是要用我這套準(zhǔn)則某一個(gè)功能的時(shí)候,附帶什么信息,那當(dāng)然是參數(shù)咯.實(shí)現(xiàn)這個(gè)準(zhǔn)則,它能正確的找到具體實(shí)現(xiàn)準(zhǔn)則的函數(shù).為什么要用這種才能正確找到呢?這里擴(kuò)展一個(gè)題外話,我們知道現(xiàn)代面向?qū)ο笥幸粋€(gè)很重要的特性都是單繼承,有優(yōu)點(diǎn)那么就有缺點(diǎn),比如多繼承會(huì)出現(xiàn)不同類出現(xiàn)相同方法時(shí)編譯器自己都不知道調(diào)那個(gè)類的方法,c++就有多重繼承,它解決的方式是virtual關(guān)鍵字.
單繼承如果要有多個(gè)功能怎么辦?所以用接口的方式解決這一問(wèn)題,
這樣各類可以通過(guò)實(shí)現(xiàn)接口的方式來(lái)組合. - 代理模式跟這個(gè)的關(guān)系??
代理模式是通過(guò)這個(gè)接口的方式實(shí)現(xiàn)的.描述一下代理模式是A持有接口(java叫實(shí)現(xiàn)接口,其實(shí)也可以持有接口看個(gè)人習(xí)慣咯),B實(shí)現(xiàn)接口。這樣就ok了,疑問(wèn)為什么持有就行了呢,因?yàn)樵诿嫦驅(qū)ο缶幊陶Z(yǔ)言中,實(shí)現(xiàn)接口的類是可以統(tǒng)一用接口來(lái)代替的.
interface
最后編輯于 :
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
推薦閱讀更多精彩內(nèi)容
- 寫在之前的大篇廢話 研究adaptivePresentationStyleForPresentationContr...
- 1.1 接口概念接口是功能的集合,同樣可看做是一種數(shù)據(jù)類型,是比抽象類更為抽象的”類”。接口只描述所應(yīng)該具備的方法...
- Servlet Interface 是Java Servlet API的核心抽象。所有的servlets都直接或者...
- Android Interface Definition Language (AIDL) 注:本文翻譯自https...
- 有多少人夢(mèng)想自己年薪百萬(wàn)? 但夢(mèng)想依舊是夢(mèng)想。 年薪百萬(wàn)的職場(chǎng)精英到底憑什么這么屌? 他們是獨(dú)立于大眾之外的另外一...