C 的抽象類別

2022-02-13 06:43:36 字數 2342 閱讀 5631

抽象類,有3個特點:

第1個,不能被例項化。

第2個,類中的抽象方法在繼承的子類中必須重寫。

第3個,類一旦有抽象方法出現,那這個類必須定義為抽象類。

現實開發中,發現有共同的**,可以把這些共同的**放在乙個抽象類中。舉個例子,計算四邊形的周長。

矩形,長方形,正方形:

長斜方形,長菱形:

梯形,不等邊四邊形:

從上面三個類別中,你均可以看到有乙個方法,perimeter()是計算四邊形的周長。

經根博文開頭所言,你可以把這個方法抽出來,放在乙個抽象類中,統一介面:

把方法寫成抽象方法之後,每個類需要繼承此抽象類,並需要重寫 override抽象的方法。

下面驗證一下**,如需要計算乙個不規則的四邊形的周長,那就是4條邊相加:

在控制台執行:

基於C 的抽象類別詳解

抽象類,有3個特點 第1個,不能被例項化。第2個,類中的抽象方法在繼承的子類中必須重寫。第3個,類一旦有抽象方法出現,那這個類必須定義為抽象類。現實程式設計客棧開發中,發現有共同的程式設計客棧 可以把這些共同的 放在乙個抽象類中。舉個例子,計算四邊形的周長。矩形,長方形,正方形 class rect...

自定SERIAL 巨集給抽象類別使用

前兩天程式設計正好遇到這個問題,找了半天沒結果.無意中發現了下面的論述 摘自 深入淺出mfc 第 章document view 深入探討 p537 自定serial 巨集給抽象類別使用 你是知道的,所謂抽象類別就是包含純虛函式的類別,所謂純虛函式就是只有宣告 沒有定義的虛函式。所以,你不可能將抽象類...

C 抽象類 抽象屬性 抽象方法

抽象類往往用來表徵對問題領域進行分析 設計中得出的抽象概念,是對一系列看上去不同,但是本質上相同的具體概念的抽象。下面我們以水果為例,首先定義抽象類fruit,抽象類中有公共屬性vendor,抽象屬性price和抽象方法growinarea,1 public abstract class fruit...