C 中的封裝 繼承

2021-07-04 10:06:27 字數 1297 閱讀 6747

一、封裝

封裝就是將抽象得到的資料和行為相結合,幸好曾乙個有機的整體,將資料的源**進行有機的結合,形成類。封裝的目的是增強安全性和簡化程式設計,使用者不必了解具體的實現細節,只需要通過外部介面,特定的訪問許可權來使用類的成員。封裝可以隱藏實現細節,使**模組化。

#includeusing namespace std;

class student

int getage()

private:

int age;

string name;

};

上面就對 student類中的成員變數 age進行的封裝

二、繼承

c++通過類派生機制來支援繼承。被繼承的型別稱為基類,新產生的類為派生類活子類。保持已有類的特性而構造新類的過程稱為繼承。在已有類的基礎上新增自己的特性而產生新類的過程稱為派生。繼承和派生的目的是保持已有類的特性並構造新類。繼承的目的:實現**重用。派生的目的:實現**擴充。三種繼承方式:public、protected、private。

繼承時的建構函式:(1)、基類的建構函式不能被繼承,派生類中需要宣告自己的建構函式;

(2)、宣告建構函式時,只需要對本類中新增成員進行初始化,對繼承來的基類成員的初始化,自動呼叫基類建構函式完成;

(3)、派生類的建構函式需要給基類的建構函式傳遞引數; (4

)、當基類中宣告有預設形式的建構函式或未宣告建構函式時,派生類建構函式可以不向基類建構函式傳遞引數;

(5)、若基類中未宣告建構函式,派生類中也可以不宣告,全採用預設形式建構函式;

(6)、當基類宣告有帶形參的建構函式時,派生類也應宣告帶形參的建構函式,並將引數傳遞給基類建構函式;

(7)、建構函式的呼叫次序:a、呼叫基類建構函式,呼叫順序按照它們被繼承時宣告的順序(從左向右);b、呼叫成員物件的建構函式,呼叫順序按照它們在類中的宣告的順序;c、派生類的建構函式體中的內容。

繼承時的析構函式:(1)、析構函式也不被繼承,派生類自行宣告;

(2)、宣告方法與一般(無繼承關係時)類的析構函式相同;

(3)、不需要顯示地呼叫基類的析構函式,系統會自動隱式呼叫;

(4)、析構函式的呼叫次序與建構函式相反。

同名隱藏規則:當派生類與基類中有相同成員時:(1)、若未強行指名,則通過派生類物件使用的是派生類中的同名成員;

(2)、如要通過派生類物件訪問基類中被覆蓋的同名成員,應使用基類名限定:基類名::資料成員名。

虛基類:作用:(1)、主要用來解決多繼承時可能發生的對同一基類繼承多次而產生的二義性問題;

(2)、為最遠的派生類提供唯一的基類成員,而不重複產生多次拷貝。

C 中的封裝與繼承

封裝 封裝指的是把類內部的資料隱藏起來,不讓物件例項直接對其進行操作。c 中提供了屬性機制來對類內部的狀態進行操作。在c 中,封裝可以通過public private protected和internal等關鍵字來體現。下面通過例子來實現以下功能,具體的方法如下 不使用封裝特性來定義乙個person...

c 中的封裝 繼承 多型詳解

物件導向有封裝 繼承 多型這三個特性,物件導向程式設計按照現實世界的特點來管理複雜的事物,把它們抽象為物件,具有自己的狀態和行為,通過對訊息的反應來完成任務。這種程式設計方法提供了非常強大的多樣性,大大增加了 的重用機會,增加了程式開發的速度,將具備獨立性特製的程式 包裝起來,修改部分程式 時不至於...

C 的封裝 繼承 多型

物件導向的三大特性 封裝 繼承 多型 封裝性 所謂封裝性就是將某些東西包裝起來,外界無法直接使用,只能通過某些方式才能訪問到。物件導向理念是萬物皆物件,都有其特徵和行為,我們把 成員變數 理解為特徵,把 成員函式 理解為行為。被封裝的特性只能通過特定的行為去訪問。訪問限定符 public prote...