您好,登錄后才能下訂單哦!
一、抽象類:
在類聲明中使用abstract修飾符的類稱為抽象類。含有一個或一個以上的抽象成員的類,必須定義為抽象類。當方法聲明包含abstract修飾符時,稱該方法為抽象方法,雖然抽象方法同時隱含為虛擬方法,但是它不能有virtual修飾符。聲明中包含abstract修飾的屬性稱為抽象屬性。抽象方法或屬性沒有方法體或屬性訪問器。抽象類只能是其他類的基類,抽象類不能實例化,必須在繼承中實現。抽象類中可以包含非抽象成員。抽象類的目的是提供一個合適的基類,以派生其他的類在類聲明中使用abstract修飾符的類稱為抽象類。含有一個或一個以上的抽象成員的類,必須定義為抽象類。當方法聲明包含abstract修飾符時,稱該方法為抽象方法,雖然抽象方法同時隱含為虛擬方法,但是它不能有virtual修飾符。聲明中包含abstract修飾的屬性稱為抽象屬性。抽象方法或屬性沒有方法體或屬性訪問器。抽象類只能是其他類的基類,抽象類不能實例化,必須在繼承中實現。抽象類中可以包含非抽象成員。抽象類的目的是提供一個合適的基類,以派生其他的類
二、接口:
接口是引用類型的,類似于類,和抽象類的相似之處有三點:
1、不能實例化;
2、包含未實現的方法聲明;
3、派生類必須實現未實現的方法,抽象類是抽象方法,接口則是所有成員(不僅是方法包括其他成員);
另外,接口有如下特性:
接口除了可以包含方法之外,還可以包含屬性、索引器、事件,而且這些成員都被定義為公有的。除此之外,不能包含任何其他的成員,例如:常量、域、構造函數、析構函數、靜態成員。一個類可以直接繼承多個接口,但只能直接繼承一個類(包括抽象類)。
這是我自己總結的他的區別:
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。