Re: [問題] 將callback轉型成原本的class
※ 引述《liu2007 (薯)》之銘言:
: ※ 引述《bleed1979 (十三)》之銘言:
: 我的問題在於說如果Class C知道SpecialCallback 所帶進來的東西是Class A
: cast一下,那我前面寫的東西不就做白工了...??
讓 Class C 只能操作部分 Class A 的方法,就是產生 Interface 的目地之一,
因此以你的例子來說,不會有所謂 Cast 型態到 A 就能用的可能,
資料型別根本就不同。
你可以把 Interface 的概念想成一種程式碼與程式碼之間的交易合約,
透過 Interface 上面訂定的合約內容,呼叫方餵參數給被呼叫方,
被呼叫方依照方法上面的回傳型態給回傳值,履行合約。
不管未來 Class A 和 Class C 長成什麼鬼樣子,
只要呼叫方和被呼叫方都有遵守合約,這個合約就能正常進行。
你要是問,如果 Class C 實作者知道 Class A 這個型別,
甚至只要知道他的名稱,這樣不會有辦法可以亂搞嗎?
套一句以前學長的回答︰「你就罵他啊!」
本來界面存在的目地就不是為了讓人不照原本的規劃,隨意執行程式啊~
還有請別再 pointer 來 pointer 去了,非常不專業又好礙眼。
打「參考」兩個字不管你用什麼輸入法都不用敲鍵盤那麼多次。
Callback 也是一樣,你的程式碼只是在運用界面的特性而已,
跟人家談 callback 的情境完全不一樣。
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.168.127.139
推
10/14 21:16, , 1F
10/14 21:16, 1F
單純喜好問題,我不喜歡人家中英文混雜,然後英文的部分又用的不好。
→
10/14 22:33, , 2F
10/14 22:33, 2F
→
10/14 22:34, , 3F
10/14 22:34, 3F
→
10/14 22:34, , 4F
10/14 22:34, 4F
→
10/14 22:59, , 5F
10/14 22:59, 5F
推
10/14 23:10, , 6F
10/14 23:10, 6F
※ 編輯: dream1124 來自: 118.168.65.86 (10/15 00:20)
→
10/15 00:47, , 7F
10/15 00:47, 7F
→
10/15 00:51, , 8F
10/15 00:51, 8F
討論串 (同標題文章)
java 近期熱門文章
PTT數位生活區 即時熱門文章