類 抽象類 接口 這三者的關係

抽象類和普通類的區別

1.抽象類不能被實例化。

3.抽象方法只需申明,而無需實現,抽象類中可以允許普通方法有主體

4.含有抽象方法的類必須申明為抽象類

5.抽象的子類必須實現抽象類中所有抽象方法,否則這個子類也是抽象類。

抽象類和接口的區別:

1. 抽象類中的方法可以有方法體,就是能實現方法的具體功能,但是接口中的方法不行。

2. 抽象類中的成員變量可以是各種類型的,而接口中的成員變量只能是 public static final 類型的。

3. 接口中不能含有靜態代碼塊以及靜態方法(用 static 修飾的方法),而抽象類是可以有靜態代碼塊和靜態方法。

4. 一個類只能繼承一個抽象類,而一個類卻可以實現多個接口。

接口和類的區別:

1、接口類似於類,但接口的成員都沒有執行方式,它只是方法、屬性、事件和索引的組合而已,並且也只能包含這四種成員;類除了這四種成員之外還可以有別的成員(如字段)。

2、不能實例化一個接口,接口只包括成員的簽名;而類可以實例化(abstract類除外)。

3、接口沒有構造函數,類有構造函數。

4、接口不能進行運算符的重載,類可以進行運算符重載。

5、接口的成員沒有任何修飾符,其成員總是公共的,而類的成員則可以有修飾符(如:虛擬或者靜態)

6、派生於接口的類必須實現接口中所有成員的執行方式,而從類派生則不然


分享到:


相關文章: