類與類之間的關係之 繼承

2021-09-07 15:32:46 字數 1781 閱讀 6374

一、類與類之間的三大關係

(1)組合:乙個類是另乙個類的一部分

class a

;};

(2)**:乙個類的方法是另乙個類方法的子集,也就是說這個類它本身是不進行任何的操作,只是呼叫另乙個類來幫它實現它想做的事情。

(3)繼承:乙個類是另乙個類的一種

class parent

;class child : public parent

;

二、對於父類中三種許可權的成員變數以及成員方法被子類繼承後的特點

父類繼承方式

子類外界

public

public

public

可以訪問

protected

protect

不能被訪問

private

private

protected

public

protected

不能被訪問

protected

protected

private

private

private

public

能繼承,不能訪問

不能被訪問

protected

private

注:(1)在繼承的時不寫繼承權限時預設private許可權繼承

(2)繼承以後,以繼承時的許可權和本身的許可權保密等級高的為主

三、構造:先構造父類,再構造子類,也就是說在子類構造之前就要先構造父類

class a

int a;

};class aa : public a

int a;

int a1;

};

四、成員方法之間的三大關係

(1)過載

條件:作用域相同、函式名相同、引數列表不同

顯然父類和子類是兩個不同的作用域,所以繼承中不存在過載

(2)隱藏:子類會隱藏父類中成員方法名相同的成員方法

**解釋:

class b

結果展示:

在繼承關係中提供的由子類構造父類的構造方法:先利用子類構造乙個父類物件,用父類物件給 an (**中定義的乙個父類物件)賦值

子類物件 = 父類物件 // 這種構造是錯誤的,因為子類繼承了父類,如果這樣寫就是增加了無效的訪問空間

父類物件 = 子類物件 //這種構造方法正確

子類指標 = 父類指標 //錯誤,與上面的相同,當子類訪問子類本身的成員或成員方法時,它已經不存在了

父類指標 = 子類指標 //正確

虛函式表父類中的虛函式繼承到子類依舊是虛函式(子類中與與父類同返回值、同函式名、同引數列表時,子類中的這個方法也是虛函式)

先析構子類,後析構父類,又因為是繼承關係,所以在呼叫子類析構之後會自動呼叫父類的析構

物件導向之繼承(類與類之間的關係)

繼承 類與類之間的關係 父子關係 子類繼承父類,那麼子類就擁有父類的公共屬性和方法 乙個子類只能繼承乙個父類,乙個父類可以有好多子類 子類物件可以直接轉成父類,但父類只能轉回對應的子類 如果子類轉成父類之後,父類物件就不能點出子類裡面的屬性和方法使用了 c 允許乙個類繼承其他類的屬性和方法,別繼承的...

類與類之間的關係

uml uml是統一建模語言 為軟體開發提供一些標準的圖例,統一開發思想,從而促進團隊協作 在軟體過程中,會用到uml 分析 設計 編碼 測試 維護 主流的有 rup rational unified process 合理的統一過程 強調軟體開發一開始就要有好的設計 才能有好的設計 xp程式設計 e...

類與類之間的關係

1.在乙個類中將被聚合元素作為其屬性 如果所有類都會用到乙個類的物件,則把它作為屬性 在任何方法的任何類,都可以建立物件 package 聚合 public class car public static void main string args package 聚合 public class w...