C 學習筆記 抽象類 hawkol 新浪部落格

2021-09-23 18:39:57 字數 540 閱讀 9255

抽象類也是一種特殊的類,該類不能用來定義物件,這種類存在的作用只有乙個,那就是被繼承。

抽象類可以看成是乙個統一的介面,至於介面下面是怎麼實現的,可以由派生類來完成。這樣的好處是可以使介面和實現分離,使程式具有良好的可擴充套件性。

如果乙個類中包含一或多個虛函式,那麼該類為抽象類。而且,抽象類必須作為基類才有意義,抽象類是不可以定義物件的,所以抽象類又可以稱為抽象基類。

抽象類的作用:抽象類可以​為多個派生類提供乙個公共的介面,反映這些類之間的關係。如果在抽象類所派生出的新類中對基類的所有純虛函式進行了定義,那麼這些函式就被賦予了功能,可以被呼叫。這個派生類就不是抽象類,而是可以用來定義物件的具體類。如果在派生類中沒有對所有虛函式進行定義,則此類仍然是抽象類,不能用來定義物件。

抽象類雖然不能定義物件(不可例項化),但是可以定義指向抽象類的物件指標,當然使用派生類定義相應物件後,就可以使用該指標指向派生類的物件。通過該指標呼叫相應的虛函式,實現多型性操作。

抽象類物件指標可以這樣定義:

transport *pt

car c;

pt=&c;​​

c 學習筆記 抽象類 抽象方法 抽象屬性

抽象類與抽象方法 先說些概念的東西 在乙個類前面加上 abstract 關鍵字,此類就成為了抽象類。對應的,乙個方法類前面加上 abstract 關鍵字,此方法就成為了抽象方法。abstract class fruit 抽象類 注意抽象方法不能有實現 在函式名後直接跟乙個分號。抽象類專用於派生出子類...

C 學習筆記 多型(二)抽象類

多型是類的三大特性之一,抽象類又是多型的實現方法之一。抽象類是什麼呢,如果把虛方法比作乙個盛有純淨水的杯子,那麼此時的 純淨水 就是事先定義好的方法,我們可以根據不同的需求來改變杯子中所事先盛放的是 純淨水 還是 咖啡 但是抽象類呢,他更像是乙個空的杯子,放在消毒櫃中,讓有需要的人自己去拿,去決定這...

Java學習筆記 抽象類

抽象類 類中沒有足夠的資訊來描繪乙個具體的物件。定義有點玄乎,但是從它的特點可以理解這個定義 abstract class來定義抽象類。抽象類的特點 1.抽象方法只允許在抽象類中定義,但是抽象類中可以定義非抽象方法 抽象模擬普通類僅僅多了抽象方法 2.抽象方法只能定義方法宣告,並不能定義方法實現 3...