免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

C#中繼承的知識(shí)點(diǎn)總結(jié)

本篇內(nèi)容主要講解“C#中繼承的知識(shí)點(diǎn)總結(jié)”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“C#中繼承的知識(shí)點(diǎn)總結(jié)”吧!

專注于為中小企業(yè)提供成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)綏德免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

C#的繼承與 C++ 等語言一個(gè)重要的不同,就是只能從一個(gè)類中繼承,這是開發(fā)者在權(quán)衡了從多個(gè)類C#繼承的優(yōu)勢與劣勢作出的結(jié)果。不過,可以從接口繼承。另外,繼承可傳遞。構(gòu)造函數(shù)和析構(gòu)函數(shù)不能被繼承。

初始化基類

可以在派生類構(gòu)造函數(shù)中添加初始化基類的代碼。

public class BaseClass  {      private int i = 0;            public BaseClass(int index)      {          i = index;      }  }    public class DerivedClass : BaseClass  {      private int j = 0;            public DerivedClass(int index) : base(index)      {          j = index;      }  }

注意派生類構(gòu)造函數(shù)中的 : base(index)。將先調(diào)用基類的構(gòu)造函數(shù)。

另外,相對(duì)于 this,要訪問基類的成員,可以使用 base,當(dāng)前這不能用在靜態(tài)方法中,因?yàn)殪o態(tài)方法沒有實(shí)例。

C#繼承中的重寫

◆virtual 用在基類中,指定一個(gè)虛方法(屬性),表示這個(gè)方法(屬性)可以重寫。

◆override 用在派生類中,表示對(duì)基類虛方法(屬性)的重寫。

以上的基類和派生類都是相對(duì)的。B 是 C 的基類,也可以是 A 的派生類,B 中既可以對(duì) A 中的 virtual 虛方法用 override 重寫,也可以指定 virtual 虛方法供 C 重寫。

不能重寫非虛方法或靜態(tài)方法。重寫的基方法必須是 virtual、abstract 或 override 的。為什么 override 也可以重寫呢?因?yàn)榛愔械?override 實(shí)際上是對(duì)基類的基類進(jìn)行的重寫,由于繼承可傳遞,所以也可以對(duì)基類中 override 的方法進(jìn)行重寫。

◆override 聲明不能更改 virtual 方法的可訪問性。override 方法和 virtual 方法必須具有相同的訪問級(jí)別修飾符。
不能使用修飾符 new、static、virtual 或 abstract 來修改 override 方法。

◆重寫屬性聲明必須指定與繼承屬性完全相同的訪問修飾符、類型和名稱,并且被重寫的屬性必須是 virtual、abstract 或 override 的。

public class BaseClass  {      public virtual string GetString()      {          return "這是一個(gè)虛方法。";      }  }    public class DerivedClass : BaseClass  {      public override string GetString()      {          return "這是重寫了的方法。";      }  }

可以看出,重寫與前面講的重載是有區(qū)別的。

C#繼承中的方法重載

方法重載并不是類繼承中的內(nèi)容,只是它容易和重寫等混淆,所以放在一起談?wù)劇?/p>

什么是重載呢,舉個(gè)例子,我們?cè)趹?yīng)用 System.IO.File.Create() 方法時(shí),往往可以選擇幾種參數(shù),這是就方法的重載,同一個(gè)作用域、同一個(gè)方法名稱、具有不同的參數(shù)類型或參數(shù)個(gè)數(shù),在調(diào)用方法時(shí),根據(jù)參數(shù)自動(dòng)決定使用哪一個(gè)方法。

示例

public string GetString()  {      //...  }   public string GetString(int index)  {      //...  }   public string GetString(string userName)  {      //...  }

在C#中,方法參數(shù)沒有默認(rèn)值,可通過重載來實(shí)現(xiàn)默認(rèn)值功能。

到此,相信大家對(duì)“C#中繼承的知識(shí)點(diǎn)總結(jié)”有了更深的了解,不妨來實(shí)際操作一番吧!這里是創(chuàng)新互聯(lián)網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

本文名稱:C#中繼承的知識(shí)點(diǎn)總結(jié)
鏈接地址:http://m.newbst.com/article2/gdsdic.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)網(wǎng)站營銷商城網(wǎng)站微信小程序虛擬主機(jī)動(dòng)態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

微信小程序開發(fā)