C 繼承基礎總結

2021-08-15 19:54:35 字數 1502 閱讀 8481

has-a,包含關係,用以描述乙個類由多個「部件類」構成,實現has-a關係用類的成員屬性表示,即乙個類的成員屬性是另乙個已經定義好的類。

use-a,乙個類使用另乙個類,通過類之間的成員函式相互聯絡,定義友元或者通過傳遞引數的方式來實現。

is-a,即繼承關係,關係具有傳遞性。

萬事萬物皆有繼承這個現象,所謂的繼承就是乙個類繼承了另乙個類的屬性和方法,這個新的類包含了上乙個類的屬性和方法,被稱為子類或者派生類,被繼承的類稱為父類或者基類。

(1)父類中的private成員依然存在於子類中,但是卻無法訪問到。不論以何種方式繼承父類,子類都無法直接使用父類中的private成員。

(2)用public形式,基類除了私有成員的其它所有都被原樣的繼承到派生類中;即在基類中是public的,在派生類中還是public的,在基類中是protected的,在派生類中還是protected的。

(3)如果採用protected形式,則基類中除了私有成員的其它所有都被以protected的形式繼承到派生類protected中。

(4)如果採用private形式,則基類中除了私有成員的其它所有都被以private的形式繼承到派生類private中。

#include

using

namespace

std;

class person

~person()

void eat()

string id ; // 公有資料成員

private:

string name ; //私有資料

protected:

string age ; //保護資料成員

};class worker :public person //公有繼承

稍作改動之後的到如下結果:

值得注意的是:當我們去例項化乙個派生類的時候,它會先去例項化出乙個基類,然後再例項化出派生類。如果父類還存在父類,則先呼叫父類的父類的建構函式,依次往上推理即可。

C 繼承總結

繼承是物件導向程式設計中軟體重用的關鍵技術。繼承機制使用已定義的類作為基礎建立新的類定義,新的類是原有類的資料及操作與新類所增加的資料及操作的組合。新的類把原有的類作為基類引用,而不需要修改原有類的定義。新的類作為派生類引用。這種可擴充 可重用技術大大降低了大型軟體的開發難度。c 中描述類繼承關係的...

C 繼承總結

一 基類和派生類 類繼承關係的語法形式 class 派生類名 基類名錶 資料成員和成員函式說明 其中,基類名錶 的語句格式如下 訪問控制 基類名1,訪問控制 基類名2,訪問控制 是表示繼承許可權的關鍵字,稱為訪問描述符。可以是 如果省略訪問描述符,則c 認為是私有繼承。如果用關鍵字struct 而不...

C 繼承總結

繼承概念 在原有的類不變的基礎之上,新增一些函式,對功能進行拓展 繼承特點 是物件導向程式設計的的層次結構 是實現由簡單到複雜的認知過程 基類 被繼承的類 派生類 在繼承之後產生的新類 例子 手機系統會不斷更新,然而,我們的手機更新之後的功能只是對原來的功能進行優化和新增 繼承格式 派生類名 繼承許...