C#---->類和接口


1、類成員,構造函數,類的繼承,類的掃描順序

2、普通基類虛成員(virtual),以基類身份聲明的變量並用子類對象進行賦值的,可以實現子類對基類的重寫(override)

3、抽象類(abstract),抽象類的實例成員和抽象成員

4、接口(interface),接口隱式實現和顯示實現,接口的調用:類繼承接口時,顯示實現的接口子類的方法修飾符不使用public關鍵字,隱式實現的要寫public 關鍵字,當多繼承時特別是接口成員重名時要使用顯示繼承

5、抽象類和接口的區別(有了有抽象類為什么要有接口,兩者如何使用)

個人理解:

什么叫多態性:在同一個粒度視圖層面上對同類事物不加區別的對待而統一處理

一、從大范圍上講

  • 使用抽象類是為了實現代碼的復用,接口是為了實現多態性。當遇到該使用抽象類還是接口猶豫不決時,先弄清楚自己的動機
  • 抽象類表示繼承類是什么,接口則表示繼承類能做什么

 

二、在實際聲明當中

1、相同點:都可以被繼承,都不能被實例化,可以有方法的聲明,派生類必須實現未實現的方法

2、不同點:

  • 抽象類可以聲明字段、實現的方法、屬性,接口只能聲明屬性、索引器、事件、和方法的聲明,不能聲明字段
  • 抽象類只能被單一繼承,接口可以多實現(一個派生類只能繼承一個抽象類,但是可以實現多個接口)

 

6、下面是一些相關知識的概念,后面這個鏈接里面有一些說明,個人覺得說的很好和大家分享一下:

博客園好文分享:https://www.cnblogs.com/binyao/p/4891306.html

  • 面向對象編程和面向接口編程(看鏈接內容)
  • 面向對象的核心思想之一:模擬真實世界,把真實世界的事物抽象成類,整個程序靠個各類的實例互相通信互相協作完成系統功能

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2026 CODEPRJ.COM