十二 初探繼承

2021-07-04 19:13:59 字數 997 閱讀 8924

1、繼承概念

物件導向中的繼承指類之間的父子關係

示例:

class parent

void print()

};class child : parent //繼承自父類,預設為private繼承

;

注意:

繼承時的訪問級別設定會影響到成員的訪問級別

2、c++中的訪問級別與繼承

private繼承

protected繼承

修改上面的程式,在子類中新增新函式,如下:

class child : parent   //繼承自父類

};

嘗試編譯執行程式,會得到一些錯誤:

編譯器告訴我們,父類中的a成員變數是私有的,在子類中無法被訪問!

那麼問題來了?如果想要乙個成員變數在外界不能被訪問,但是在其類中和其子類中都可以被訪問,該怎麼辦?

新的成員修飾符:protected 受保護成員

- protected成員可以在子類中被訪問,但不能在外界被訪問

- protected成員的訪問許可權介於public和private之間

思考:

如何恰當的使用public,protected和private為成員宣告訪問級別??

類成員訪問級別設定的原則

注意:private成員在子類中依然存在,但是卻無法訪問到。

3、繼承與訪問級別

父類的成員訪問級別和子類的繼承級別,共同決定了這些成員在子類中的訪問級別,該訪問級別有如下的公式:

公式:

繼承成員對外的訪問屬性

asp偽繼承初探

在寫乙個分頁類的時候,碰到乙個很巧妙的類物件引用傳遞的問題,如果我這裡解釋是怎麼一回事可能大家很難看清楚,不如看 其中使用到乙個分頁類cpaging class cpaging public rs recordset物件 public mark 指標標籤 private ssize 每頁顯示數 pr...

Typescript初探 類與繼承

類 類的關鍵字 clss可以聲名乙個類,類可以從字面上理解,類裡面有很多態別的資料或者方法,類可以被子類或者介面繼承。class greeter greet let greeter newgreeter world 上面是乙個類的使用,可見類裡面可以囊括多種資料介面。我們一般這樣說 這個類有3個成員...

scala 學習筆記十二 繼承

1 介紹 繼承是物件導向的概念,用於 的可重用性。可以通過使用extends關鍵字來實現繼承。為了實現繼承,乙個類必須擴充套件到其他類,被擴充套件類稱為超類或父類。擴充套件的類稱為派生類或子類。scala支援各種型別的繼承,包括單一,多層次,多重和混合。可以在類中使用單一,多層次和層次結構。多重和混...