三種繼承方式

2022-09-13 15:06:15 字數 886 閱讀 2744

1、公有繼承

基類的public成員被繼承到派生類的public訪問限定符下,基類的protected成員被繼承到派生類

的protected訪問限定符下,而基類的private成員被繼承到派生類的不可見位置,無法直接訪問。

2、保護繼承

基類的protected成員和public成員都被繼承到派生類的protected訪問限定符下,而private成員

被繼承到不可見位置,無法直接訪問。

3、私有繼承

基類的public成員和protected成員都被繼承到派生類的private訪問限定符下,對於基類的private

成員同樣被繼承到派生類的不可見位置,無法直接訪問。

4、is a 和 has a關係

使用私有繼承,基類的公有成員和保護成員都將成為派生類的私有成員。這意味著基類方法將不會成

為派生物件公有介面的一部分,但可以在派生類的成員函式中使用它們。這種不完全繼承是has a關係

的一部分,使用包含關係(成員物件)也可以實現has a關係,因為我們只能夠呼叫成員物件中的共有

方法,而成員物件只能夠使用成員函式進行呼叫,而不會成為外部可操作的物件。

使用公有繼承,基類的公有方法將成為派生類的公有方法。簡而言之,派生類將繼承基類的介面,這是

is-a關係的一部分。

參考: 《慕課網》

三種繼承方式

派生類繼承了基類的全部資料成員和除了建構函式,析構函式之外的全部資料成員,但是這些成員的訪問屬性在派生的過程中是可以調整的。從基類繼承的成員,其訪問屬性由繼承方式控制。類的公有繼承 當繼承方式為公有繼承時,基類的公有成員和保護成員的訪問屬性在派生類中不變,而基類的私有成員不可直接訪問。類的私有繼承 ...

三種繼承方式

三種繼承方式 公有繼承 私有繼承,保護繼承 不同繼承方式的影響主要體現在 公有繼承 標頭檔案部分 ifndef point h define point h class point void move int offx,int offy int getx const int gety const p...

三種繼承方式

原型鏈繼承 子類.prototype new 父類 引數 優點 繼承所有 繼承父類 本身 以及 原型物件上的所有 屬性 方法。缺點 不能給父類 的建構函式傳引數 function fu name fu.prototype.say function zi類 開始 function zi zi.prot...