最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

c#基礎(chǔ)學(xué)習(xí)之多態(tài)

 更新時間:2013年09月22日 15:49:33   作者:  
多態(tài)(Polymorphism)按字面的意思就是“多種狀態(tài)”。在面向?qū)ο笳Z言中,接口的多種不同的實現(xiàn)方式即為多態(tài)

最近在看一本書《你必須知道的.Net》,書涵蓋的內(nèi)容比較多,對于c#,.Net平臺以往所學(xué)的零散東西有了慢慢的總結(jié)和新的認(rèn)識。把一些基礎(chǔ)的東西記錄于此。

先說說多態(tài)吧:

1.基類繼承式多態(tài)

如書中所說,基類繼承式多態(tài)的關(guān)鍵是繼承體系的設(shè)計與實現(xiàn)。書中舉了個簡單的列子

復(fù)制代碼 代碼如下:

      Files myFile=new WORDFile();

      myFile.open();


     myFile是一個父類Files變量,保持了指向子類WORDFile實例的引用,然后調(diào)用一個虛方法Open,具體的調(diào)用則決定于運(yùn)行時而非編譯時。從設(shè)計模式的角度看,基類繼承式多態(tài)體現(xiàn)了一種IS-A方式,例如WORDFile IS-A Files就體現(xiàn)在這種繼承關(guān)系中。

2.接口實現(xiàn)式多態(tài)

    區(qū)別于基類的繼承方式,這種多態(tài)通過實現(xiàn)接口的方法約定形成繼承體系,具有更高的靈活性。從設(shè)計模式的角度來看,接口實現(xiàn)多態(tài)體現(xiàn)了一種CAN-DO關(guān)系。上述的文件加載器也可以這樣實現(xiàn)

復(fù)制代碼 代碼如下:

      IFileOpen myFile=new WORDFile();

      myFile.open();


多態(tài)的運(yùn)行機(jī)制:

      從技術(shù)實現(xiàn)角度看,是.NET的動態(tài)綁定機(jī)制成就了面向?qū)ο蟮亩鄳B(tài)特性。靜態(tài)綁定在編譯期就可以確定關(guān)聯(lián),一般是以方法重載來實現(xiàn)的;動態(tài)綁定則在運(yùn)行期通過檢查虛擬方法表來確定動態(tài)關(guān)聯(lián)覆寫的方法,一般以繼承和虛方法實現(xiàn)。

相關(guān)文章

最新評論

陆川县| 新建县| 永德县| 江口县| 孟州市| 如皋市| 治多县| 抚州市| 维西| 于都县| 墨江| 庆元县| 太白县| 新营市| 澎湖县| 永和县| 青海省| 政和县| 阳曲县| 右玉县| 冀州市| 承德市| 吉木乃县| 松溪县| 阿拉善盟| 乳源| 竹溪县| 桐乡市| 饶阳县| 宜宾县| 颍上县| 商洛市| 清水县| 烟台市| 北票市| 临夏县| 三河市| 磐安县| 乌恰县| 平江县| 门头沟区|