/**
* 抽象類和介面的區別:
** 成員:
* 抽象類:可以有變數,可以有常量,可以有抽象方法,可以有普通方法
* 介面:沒有變數,看似變數是常量,只有抽象方法
** 關係:
* 類和類:單繼承、沒有多繼承有多層繼承
* 介面和介面:介面需要子類來實現,而介面只能定義抽象方法,所以介面只能夠繼承接(inte***ce後面不能進行implements)
* inte***ce a
* inte***ce b implements a// 錯誤
* }
*
* 設計理念:
* 抽象類繼承是為了復用父類的模板內容,是父類物質的更加具體的體現
* 介面是為了擴充套件能力,使其具有能力看起來像乙個物質,但是並不是這個物質
* 準則:從物質(is - a)和能力(like - a)進行區分
*/
抽象類和介面的區別
要結合來使用,從而互補長短。接下來先說說抽象類和介面的區別。區別一,兩者表達的概念不一樣。抽象類是一類事物的高度聚合,那麼對於繼承抽象類的子類來說,對於抽象類來說,屬於 是 的關係 而介面是定義行為規範,因此對於實現介面的子類來說,相對於介面來說,是 行為需要按照介面來完成 這些聽起來有些虛,舉個例...
抽象類和介面的區別
net提供了介面,這個不同於class或者struct的型別定義。介面有些情況,看似和抽象類一樣,因此有些人認為在.net可以完全用介面來替換抽象類。其實不然,介面和抽象類各有長處和缺陷,因此往往在應用當中,兩者要結合來使用,從而互補長短。接下來先說說抽象類和介面的區別。區別一,兩者表達的概念不一樣...
抽象類和介面的區別
net提供了介面,這個不同於class或者struct的型別定義。介面有些情況,看似和抽象類一樣,因此有些人認為在.net可以完全用介面來替換抽象類。其實不然,介面和抽象類各有長處和缺陷,因此往往在應用當中,兩者要結合來使用,從而互補長短。接下來先說說抽象類和介面的區別。區別一,兩者表達的概念不一樣...