国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - C# - 解析在C#中接口和類的異同

解析在C#中接口和類的異同

2022-03-08 14:15Mogul1 C#

今天小編就為大家分享一篇關于解析在C#中接口和類的異同,小編覺得內容挺不錯的,現在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧

不同點:

不能直接實例化接口。

接口不包含方法的實現。

接口可以多繼承,類只能單繼承。

類定義可以在不同的源文件之間進行拆分。

相同點:

接口、類和結構都可以從多個接口繼承。

接口類似于抽象基類:繼承接口的任何非抽象類型都必須實現接口的所有成員。

接口和類都可以包含事件、索引器、屬性。

接口只能定義方法。

1. 類

類的分類有:抽象類(abstract)、密封類(sealed)、靜態類(static)

1.1 抽象類

關鍵字: abstract

使用目的:若所有子類擁有共同的特性,可以把這個特性放到一個抽象類中,子類繼承此抽象類。 

特點:

    1.不能被實例化;ClassName en=new ClassName();//這樣會報錯。

    2.抽象成員必須包含在抽象類中。

    3.抽象類除了抽象成員外,還可以包含別的成員(不用關鍵字 abstract)。

    4.子類繼承抽象父類后,必須把父類中的所有抽象成員都重寫(非抽象成員不必重寫)。除非子類也是個抽象類。

    5.抽象成員的訪問修飾符不能是private。

    6.抽象類是有構造函數,雖然不能被實例化。

    7.abstract不能用于字段成員,可定義成屬性。

    8.abstract用于方法時,方法不能定義主體(內容)。

    9.抽象類也可以實現接口,但要把接口的成員前面標記個abstract。

1.2 密封類

關鍵字:sealed

使用目的:不需要子類來繼承他。如 String;

特點:

    1.不能被繼承,如:string ,不能被繼承。

    2.子類重寫后,前面加個sealed,那么子類就不能再被繼承。

1.3 靜態類

關鍵字: static

使用目的:不需要實例化,可以直接類名引用靜態方法。比如 工具類。

特點:

    1.相似于sealed與abstract使用。

    2.靜態成員在整個程序退出時才釋放資源,所以盡量別寫靜態字段、屬性。最好是靜態方法。

2. 接口

關鍵字:interface

使用目的:抽象類所擁有的共性,也可以概括為:為了多態。

特點:

    1.接口中只能包含方法。(方法、屬性、索引器、事件)

    2.接口中的方法不能有任何實現

    3.接口中的成員不能有任何訪問修飾符(哪怕是public)

    4.接口不能被實例化

    5.實現接口的類,必須實現接口的所有成員(這里跟抽象類一樣)

    6.類不能多繼承,所以在某些情況下,只能用接口來代替。接口可以多實現(一個類可以繼承多個接口,而只能繼承一個類)

    7.接口的主要目的就是為了實現多態

    8.當一個類,同時繼承了某個類,并且也實現了某些接口的時候,必須要將繼承的類寫在第一個(如果一個類同時繼承了父類和接口的時候,要把父類寫在最前面)

    9.當多個類,都具有某個或某幾個功能時(方法),但是這幾個類型又不屬于相同的系列(這幾個類型沒有共同的父類,就不能用抽象類。),所以這時,為了實現多態就可以考慮把這幾個類型共有的方法提取到一個接口中,讓這幾個類型分別實現該接口

    10.當父類實現接口,子類繼承父類。那么 接口就可以引用子類

    11.不要在一個接口中寫過多的方法,避免造成接口污染。可編寫多個接口,在每個接口中,分別定義方法

    12.實現接口方法的時候,不要有override關鍵字,直接跟平常定義一樣

    13.接口方法的顯示實現,如果多個接口里有相同的方法名。那么第一個方法名默認的引用的是排在最前面的接口,如果要使用后面接口的方法,就要顯示實現:接口名.方法名。訪問修飾符是private

解析在C#中接口和類的異同

總的來說,接口和抽象類是.Net為了更好的實現類型之間繼承關系而提供的語言手段,而且兩者有些相輔相成的關系。

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對服務器之家的支持。如果你想了解更多相關內容請查看下面相關鏈接

原文鏈接:https://blog.csdn.net/Mogul1/article/details/81191633

延伸 · 閱讀

精彩推薦
  • C#WPF 自定義雷達圖開發實例教程

    WPF 自定義雷達圖開發實例教程

    這篇文章主要介紹了WPF 自定義雷達圖開發實例教程,本文介紹的非常詳細,具有參考借鑒價值,需要的朋友可以參考下...

    WinterFish13112021-12-06
  • C#C#通過KD樹進行距離最近點的查找

    C#通過KD樹進行距離最近點的查找

    這篇文章主要為大家詳細介紹了C#通過KD樹進行距離最近點的查找,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    帆帆帆6112022-01-22
  • C#深入解析C#中的交錯數組與隱式類型的數組

    深入解析C#中的交錯數組與隱式類型的數組

    這篇文章主要介紹了深入解析C#中的交錯數組與隱式類型的數組,隱式類型的數組通常與匿名類型以及對象初始值設定項和集合初始值設定項一起使用,需要的...

    C#教程網6172021-11-09
  • C#C# 實現對PPT文檔加密、解密及重置密碼的操作方法

    C# 實現對PPT文檔加密、解密及重置密碼的操作方法

    這篇文章主要介紹了C# 實現對PPT文檔加密、解密及重置密碼的操作方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下...

    E-iceblue5012022-02-12
  • C#Unity3D實現虛擬按鈕控制人物移動效果

    Unity3D實現虛擬按鈕控制人物移動效果

    這篇文章主要為大家詳細介紹了Unity3D實現虛擬按鈕控制人物移動效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一...

    shenqingyu060520232410972022-03-11
  • C#C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題實例

    C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題實例

    這篇文章主要介紹了C#設計模式之Visitor訪問者模式解決長隆歡樂世界問題,簡單描述了訪問者模式的定義并結合具體實例形式分析了C#使用訪問者模式解決長...

    GhostRider9502022-01-21
  • C#C#裁剪,縮放,清晰度,水印處理操作示例

    C#裁剪,縮放,清晰度,水印處理操作示例

    這篇文章主要為大家詳細介紹了C#裁剪,縮放,清晰度,水印處理操作示例,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    吳 劍8332021-12-08
  • C#C#實現XML文件讀取

    C#實現XML文件讀取

    這篇文章主要為大家詳細介紹了C#實現XML文件讀取的相關代碼,具有一定的參考價值,感興趣的小伙伴們可以參考一下...

    Just_for_Myself6702022-02-22
主站蜘蛛池模板: 成人精品视频 | 国产高清av在线播放 | 国产精品suv一区二区 | 久久亚洲一区二区 | 97成人在线免费视频 | 色婷婷综合网 | 一级网站在线观看 | 亚洲一区二区三区在线免费观看 | 福利视频在线播放 | 日本不卡高字幕在线2019 | 91在线视频| 久久丁香 | 中文字幕久久精品 | 亚洲在线电影 | 亚洲一区亚洲二区 | 在线播放国产精品 | 成人精品一区二区三区视频播放 | 亚洲国产视频一区二区 | 国产一区二区三区高清 | 欧美在线小视频 | 中文字幕不卡 | 国产xxxx成人精品免费视频频 | 成年人在线观看 | 久久国产精品视频 | 欧美精品一区在线 | 欧美日本免费一区二区三区 | av黄色影院| 欧美精品久久久久久久久老牛影院 | 人人叉人人 | 久久精品二 | 欧美在线观看一区 | 成人精品一区二区三区视频播放 | 亚洲一区二区国产 | 成人3d动漫一区二区三区91 | 欧洲一级毛片 | 狠狠综合 | 亚洲一区二区三区四区五区中文 | 亚洲精品日本 | 欧美精品一级二级 | 国产福利精品一区 | 国产欧美日本 |