中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

C#接口與抽象類的定義

發布時間:2021-09-13 18:55:16 來源:億速云 閱讀:213 作者:chen 欄目:開發技術

本篇內容主要講解“C#接口與抽象類的定義”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“C#接口與抽象類的定義”吧!

一、定義

  抽象類不能實例化。抽象類的用途是提供多個派生類可共享的基類的公共定義,是對類進行抽象,可以有實現,也可以不實現。使用關鍵字abstract

  進行定義。

  可以看以,抽象類實際上是繼承了System.Object類,并且編譯器為它生成了一個默認的構造函數。

  接口它是對一組方法簽名進行統一命名,是對一組行為規范的定義,使用關鍵字interface進行定義。

  可以看到,接口實際上是把它當成抽象類來看待,但是沒有構造函數。無論是抽象類擁有構造函數,還是接口不擁有構造函數,它們都是不能被實例化的。

二、成員的區別

  抽象類描述:

  1)可以定義抽象方法,抽象方法沒有具體實現,僅僅是一個方法的契約,在子類中重寫該方法。抽象類可以重寫父類的虛方法為抽象方法。

  2)可以定義非抽象方法,但要求該方法要有具體實現,如果該方法是虛方法,則在子類中可以重寫該方法。

  3)可以定義字段、屬性、抽象屬性、事件及靜態成員。

  抽象方法publicabstractintAdd(inta,intb);的IL:

  編譯器把Add方法當作一個虛方法,在子類中可以被重寫。

  虛方法protectedvirtualstringGetAddress(stringaddressID)的IL:

  它本來就是一個虛方法,所以編譯器并沒有特殊對待它。

  方法publicvoidAddRoot(Guidid,stringrootName)的IL:

它也是一個普通的對象方法。

  接口描述:

  1)可以定義屬性及索引器,但不能定義字段。

  2)可以定義事件。

  3)可以定義方法,僅僅是方法簽名的約定,不得有實現,在實現類中對該方法進行具體實現,有點類似于抽象類的抽象方法。

  4)不可以定義虛方法。

  5)不可以定義任何靜態成員。

  6)接口成員默認是全開放的,不得有訪問修飾符。

到此,相信大家對“C#接口與抽象類的定義”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

合阳县| 泰州市| 平遥县| 余江县| 通州市| 元朗区| 西充县| 马鞍山市| 壶关县| 夹江县| 游戏| 汝州市| 贞丰县| 大安市| 金堂县| 麻阳| 巴林左旗| 厦门市| 延津县| 正安县| 清原| 策勒县| 明溪县| 宝丰县| 栾川县| 吉首市| 呼图壁县| 滦平县| 望奎县| 梅河口市| 吴桥县| 张家口市| 吉木乃县| 天等县| 泰兴市| 南宁市| 普陀区| 兴业县| 石嘴山市| 湖口县| 广元市|