C 中的繼承(一)

2021-07-16 12:44:11 字數 1058 閱讀 6251



繼承(inheritance)機制

是物件導向程式設計使**可以復用的最重要的手段,它允許程式設計師在保持原有類特性的基礎上進行擴充套件,增加功能。這樣產生新的類,稱派生類。繼承呈現了物件導向程式設計的層次結構。體現了由簡單到複雜的認識過程。

思想:從現有的類繼承屬性和行為,然後增加屬性和行為定製類以滿足我們的實際要求,建立派生類不會英系那個基類的源**,基類的完整性可以得到保證

由基類派生出派生類的定義的一般形式為

class 派生類名:訪問限定符  基類名1《,訪問限定符 

基類名2,……,訪問限定符  基類名n》

;//分號不可少

其中基類1,基類2,……是已宣告的類。 在派生類定義的類體中給出的成員稱為派生類成員,它們是新增加成員,它們給派生類新增了不同於基類的新的屬性和功能。派生類成員也包括取代基類成員的更新成員。

派生類的建構函式的定義形式為:

派生類名::派生類名(引數總表):基類名1(參數列1)《,基類名2(參數列2),……,基類名n(參數列n)》,《成員物件名1(成員物件參數列1),……,成員物件名m(成員物件參數列m)》 //所列出的成員物件名全部為新增成員物件的名字

在建構函式的宣告中,冒號及冒號以後部分必須略去。

所謂不能繼承並不是不能利用,而是把基類的建構函式作為新的建構函式的一部分,或者講呼叫基類的建構函式。

冒號後的基類名,成員物件名的次序可以隨意,這裡的次序與呼叫次序無關

派生類建構函式各部分的執行次序為:

1.呼叫基類建構函式,按它們在派生類定義的先後順序,順序呼叫。

2.呼叫成員物件的建構函式,按它們在類定義中宣告的先後順序,順序呼叫。

3.派生類的建構函式體中的操作。

在派生類建構函式中,只要基類不是使用預設建構函式都要顯式給出基類名和參數列。

如果基類沒有定義建構函式,則派生類也可以不定義,全部採用系統給定的預設建構函式。

如果基類定義了帶有形參表的建構函式時,派生類就應當定義建構函式。

析構函式各部分執行次序與建構函式相反,首先對派生類新增一般成員析構,然後對新增物件成員析構,最後對基類成員析構。



C 中的繼承(一)

學習vb的時候,第一次聽說繼承 多型這類字眼,一下子就蒙了。理解了物件導向的程式設計思想後,才感覺繼承也就那麼回事。下面用乙個簡單的小例子簡單的說明一下c 中的繼承。在講解我們的小例子之前,讓我們先對繼承有個大概的了解。1 含義 當乙個類 a能夠獲取另乙個類 b中所有非私有的資料和操作的定義作為自己...

C 中的繼承

一 繼承 什麼是繼承 繼承是允許重用現有類去建立新類的過程。分類的原則是乙個類派生出來的子類具有這個類的所有非私有的屬性。1 繼承c 中的類 c 不支援多重繼承,c 類始終繼承自乙個基類 如果未在宣告中指定乙個基類,則繼承自 system.object 派生類繼承基類的語法如下 using syst...

C 中的繼承

繼承,資料抽象和動態繫結是物件導向程式設計的核心思想。使用繼承,可以定義相似的型別並對其相似關係進行建模。通過繼承聯絡在一起的類構成一種層次關係,通常在層次關係的根部有乙個基類,其他類則直接或間接地從基類繼承而來,這些繼承得到的類稱為派生類。下面就讓我們一起來 繼承中的一些常見問題。1.繼承方式cl...