1:方法重寫(xiě):就是在基類(lèi)中的方法用virtual關(guān)鍵字來(lái)標(biāo)識(shí),然后在繼承類(lèi)中對(duì)該類(lèi)進(jìn)行重寫(xiě)
創(chuàng)新互聯(lián)建站堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:網(wǎng)站建設(shè)、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的道里網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
(override),這樣基類(lèi)中的方法在子類(lèi)中已經(jīng)被重寫(xiě)了,基類(lèi)中的方法在子類(lèi)中已經(jīng)失去了功能
了。當(dāng)讓基類(lèi)的對(duì)象的引用直接指向繼承類(lèi)的對(duì)象時(shí)(多態(tài)性),調(diào)用該方法則是調(diào)用的繼承類(lèi)中重
寫(xiě)的方法。
2:方法隱藏:無(wú)論基類(lèi)中的方法是否用了virtual關(guān)鍵字,繼承類(lèi)中都可以用new關(guān)鍵字(如果不用new
的話,不會(huì)產(chǎn)生錯(cuò)誤,但會(huì)生成一個(gè)編譯警告)將基類(lèi)中的方法隱藏,所謂隱藏就是隱藏,不像重
寫(xiě),重寫(xiě)就是基類(lèi)中的舊方法在子類(lèi)中已經(jīng)不存在了,而隱藏是基類(lèi)中的方法和子類(lèi)中重寫(xiě)得到的新
方法都存在。所以當(dāng)讓基類(lèi)的對(duì)象的引用直接指向繼承類(lèi)的對(duì)象時(shí)(多態(tài)性),調(diào)用該方法則是調(diào)用
的基類(lèi)的方法。
代碼如下:
class BaseClass { public void functionA() { Console.WriteLine("BaseFunctionA ==="); } public virtual void functionB() { Console.WriteLine("BaseFunctionB ==="); } } class DerivedClass : BaseClass { new public void functionA() { Console.WriteLine("DerivedFunctionA ==="); } public override void functionB() { Console.WriteLine("DerivedFunctionB ==="); } } class Program { static void Main(string[] args) { BaseClass b2 = new DerivedClass(); b2.functionA();//BaseFunctionA === b2.functionB();//DerivedFunctionB === Console.WriteLine("-----"); BaseClass b = new BaseClass(); b.functionA();//BaseFunctionA === b.functionB();//BaseFunctionB === Console.WriteLine("-----"); DerivedClass d = new DerivedClass(); d.functionA();//DerivedFunctionA === d.functionB();//DerivedFunctionB === Console.WriteLine("-----"); } }
當(dāng)前名稱(chēng):C#隱藏方法和重寫(xiě)方法
本文鏈接:http://bm7419.com/article14/iposge.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版、云服務(wù)器、面包屑導(dǎo)航、網(wǎng)站導(dǎo)航、動(dòng)態(tài)網(wǎng)站、網(wǎng)站內(nèi)鏈
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)