不同點:
為邳州等地區(qū)用戶提供了全套網(wǎng)頁設計制作服務,及邳州網(wǎng)站建設行業(yè)解決方案。主營業(yè)務為成都網(wǎng)站建設、成都網(wǎng)站制作、邳州網(wǎng)站設計,以傳統(tǒng)方式定制建設網(wǎng)站,并提供域名空間備案等一條龍服務,秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務。我們深信只要達到每一位用戶的要求,就會得到認可,從而選擇與我們長期合作。這樣,我們也可以走得更遠!
不能直接實例化接口。
接口不包含方法的實現(xiàn)。
接口可以多繼承,類只能單繼承。
類定義可以在不同的源文件之間進行拆分。
相同點:
接口、類和結構都可以從多個接口繼承。
接口類似于抽象基類:繼承接口的任何非抽象類型都必須實現(xiàn)接口的所有成員。
接口和類都可以包含事件、索引器、屬性。
接口只能定義方法。
1. 類
類的分類有:抽象類(abstract)、密封類(sealed)、靜態(tài)類(static)
1.1 抽象類
關鍵字: abstract
使用目的:若所有子類擁有共同的特性,可以把這個特性放到一個抽象類中,子類繼承此抽象類。
特點:
1.不能被實例化;ClassName en=new ClassName();//這樣會報錯。
2.抽象成員必須包含在抽象類中。
3.抽象類除了抽象成員外,還可以包含別的成員(不用關鍵字 abstract)。
4.子類繼承抽象父類后,必須把父類中的所有抽象成員都重寫(非抽象成員不必重寫)。除非子類也是個抽象類。
5.抽象成員的訪問修飾符不能是private。
6.抽象類是有構造函數(shù),雖然不能被實例化。
7.abstract不能用于字段成員,可定義成屬性。
8.abstract用于方法時,方法不能定義主體(內(nèi)容)。
9.抽象類也可以實現(xiàn)接口,但要把接口的成員前面標記個abstract。
1.2 密封類
關鍵字:sealed
使用目的:不需要子類來繼承他。如 String;
特點:
1.不能被繼承,如:string ,不能被繼承。
2.子類重寫后,前面加個sealed,那么子類就不能再被繼承。
1.3 靜態(tài)類
關鍵字: static
使用目的:不需要實例化,可以直接類名引用靜態(tài)方法。比如 工具類。
特點:
1.相似于sealed與abstract使用。
2.靜態(tài)成員在整個程序退出時才釋放資源,所以盡量別寫靜態(tài)字段、屬性。最好是靜態(tài)方法。
2. 接口
關鍵字:interface
使用目的:抽象類所擁有的共性,也可以概括為:為了多態(tài)。
特點:
1.接口中只能包含方法。(方法、屬性、索引器、事件)
2.接口中的方法不能有任何實現(xiàn)
3.接口中的成員不能有任何訪問修飾符(哪怕是public)
4.接口不能被實例化
5.實現(xiàn)接口的類,必須實現(xiàn)接口的所有成員(這里跟抽象類一樣)
6.類不能多繼承,所以在某些情況下,只能用接口來代替。接口可以多實現(xiàn)(一個類可以繼承多個接口,而只能繼承一個類)
7.接口的主要目的就是為了實現(xiàn)多態(tài)
8.當一個類,同時繼承了某個類,并且也實現(xiàn)了某些接口的時候,必須要將繼承的類寫在第一個(如果一個類同時繼承了父類和接口的時候,要把父類寫在最前面)
9.當多個類,都具有某個或某幾個功能時(方法),但是這幾個類型又不屬于相同的系列(這幾個類型沒有共同的父類,就不能用抽象類。),所以這時,為了實現(xiàn)多態(tài)就可以考慮把這幾個類型共有的方法提取到一個接口中,讓這幾個類型分別實現(xiàn)該接口
10.當父類實現(xiàn)接口,子類繼承父類。那么 接口就可以引用子類
11.不要在一個接口中寫過多的方法,避免造成接口污染。可編寫多個接口,在每個接口中,分別定義方法
12.實現(xiàn)接口方法的時候,不要有override關鍵字,直接跟平常定義一樣
13.接口方法的顯示實現(xiàn),如果多個接口里有相同的方法名。那么第一個方法名默認的引用的是排在最前面的接口,如果要使用后面接口的方法,就要顯示實現(xiàn):接口名.方法名。訪問修飾符是private
總的來說,接口和抽象類是.Net為了更好的實現(xiàn)類型之間繼承關系而提供的語言手段,而且兩者有些相輔相成的關系。
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對創(chuàng)新互聯(lián)的支持。如果你想了解更多相關內(nèi)容請查看下面相關鏈接
網(wǎng)站標題:解析在C#中接口和類的異同
鏈接URL:http://aaarwkj.com/article14/pcdjge.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供定制網(wǎng)站、標簽優(yōu)化、關鍵詞優(yōu)化、微信公眾號、網(wǎng)站策劃、網(wǎng)站營銷
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)