關(guān)于工作和讀書(shū)的筆記
[原創(chuàng)文章歡迎轉(zhuǎn)載,但請(qǐng)保留作者信息] Justin 于 2010-01-21
Scott 在這一章講述了子類(lèi)繼承父類(lèi)接口和實(shí)現(xiàn)的三種方式:
以上就是今天課堂的主要內(nèi)容。同時(shí)Scott還提到了一種介于1和2之間的實(shí)現(xiàn)方式:就當(dāng)成是1.5吧。這樣做的好處是:對(duì)于子類(lèi)來(lái)說(shuō),父類(lèi)提供了完整的接口,以及默認(rèn)的實(shí)現(xiàn)方式(非公有的,不用擔(dān)心具體實(shí)現(xiàn)被泄露);同時(shí)子類(lèi)必須顯式地說(shuō)明是要采用默認(rèn)的實(shí)現(xiàn),還是要自己寫(xiě)。避免了因?yàn)橥泴?shí)現(xiàn)子類(lèi)的接口函數(shù)而“不知不覺(jué)”地用了父類(lèi)的接口實(shí)現(xiàn)。
除此之外,其實(shí)大師還提到了1.5的另外一種實(shí)現(xiàn):聲明一個(gè)純虛函數(shù)作為接口,然后再為該純虛函數(shù)定義實(shí)現(xiàn)。但是我竊以為這種方法實(shí)在過(guò)于詭異(為純虛函數(shù)定義實(shí)現(xiàn)),而且如大師所說(shuō)這樣做的同時(shí)也暴露了接口的實(shí)現(xiàn)(因?yàn)檫@種情況下的實(shí)現(xiàn)是公有的),想了一下,還是不記了。若真有必要,去看書(shū)罷。
Copyright @ Justin.H Powered by: .Text and ASP.NET Theme by: .NET Monster