[C#學習筆記] - abstract class與interface的區別

抽象類與接口的異同

abstract

抽象關鍵字,一般用於抽象類,抽象方法,抽象對象。爲了等價比較,下文用於表示抽象類,即abstract class。抽象類在代碼實現方面發揮作用。

interface

接口關鍵字。一組協議或規則的聲明,需要繼承的對象具體實現。接口在系統架構設計方面發揮作用,定義某種契約。

在這裏插入圖片描述

主要區別

抽象類也是類,而接口是接口。
抽象類單繼承,接口多繼承。
抽象類中的成員(對象,方法等)需要實現。接口不可以實現。(C#8.0後好像運行)
抽象類成員可以是publicprivateprotectinternal。抽象成員只能爲public
接口成員只能爲public,且默認不寫。(C#8.0後允許)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章