1、類成員,構造函數,類的繼承,類的掃描順序
2、普通基類虛成員(virtual),以基類身份聲明的變量並用子類對象進行賦值的,可以實現子類對基類的重寫(override)
3、抽象類(abstract),抽象類的實例成員和抽象成員
4、接口(interface),接口隱式實現和顯示實現,接口的調用:類繼承接口時,顯示實現的接口子類的方法修飾符不使用public關鍵字,隱式實現的要寫public 關鍵字,當多繼承時特別是接口成員重名時要使用顯示繼承
5、抽象類和接口的區別(有了有抽象類為什么要有接口,兩者如何使用)
個人理解:
什么叫多態性:在同一個粒度視圖層面上對同類事物不加區別的對待而統一處理
一、從大范圍上講
- 使用抽象類是為了實現代碼的復用,接口是為了實現多態性。當遇到該使用抽象類還是接口猶豫不決時,先弄清楚自己的動機
- 抽象類表示繼承類是什么,接口則表示繼承類能做什么
二、在實際聲明當中
1、相同點:都可以被繼承,都不能被實例化,可以有方法的聲明,派生類必須實現未實現的方法
2、不同點:
- 抽象類可以聲明字段、實現的方法、屬性,接口只能聲明屬性、索引器、事件、和方法的聲明,不能聲明字段
- 抽象類只能被單一繼承,接口可以多實現(一個派生類只能繼承一個抽象類,但是可以實現多個接口)
6、下面是一些相關知識的概念,后面這個鏈接里面有一些說明,個人覺得說的很好和大家分享一下:
博客園好文分享:https://www.cnblogs.com/binyao/p/4891306.html
- 面向對象編程和面向接口編程(看鏈接內容)
- 面向對象的核心思想之一:模擬真實世界,把真實世界的事物抽象成類,整個程序靠個各類的實例互相通信互相協作完成系統功能
