封裝:其實封裝和抽象能夠歸結到一塊兒,抽象的是具體的實現,封裝的是接口,封裝就是將抽象獲得的數據和行爲(或功能)相結合,造成一個有機的總體,也就是將數據與操做數據的源代碼進行有機的結合,造成」類」,其中數據和函數都是類的成員。封裝的目的是加強安全性和簡化編程,使用者沒必要了解具體的實現細節,而只是要經過外部接口,特定的訪問權限來使用類的成員。封裝能夠隱藏實現細節, 使得代碼模塊化。
總結:封裝就是將實例抽象獲得的數據和行爲(或功能)封裝成一個類。編程
繼承:繼承是指這樣一種能力,它可使用現有類的全部功能,並在無需從新編寫原來的類的狀況下對這些功能進行擴展。其繼承的過程,就是從通常到特殊的過程,它是類與類之間的一種關係,一個類經過繼承的方法,能夠獲得另外一個類屬性和方法,達到代碼重用的目的。
三種繼承方法:實現繼承,接口繼承,可視化繼承。
實現繼承:就是從新寫一個函數去實現。用純虛函數實現。
接口繼承:是指純粹繼承父輩的老底,也能夠去從新實現。用虛函數實現。
可視化繼承:是純粹的所有本身實現,本身功能本身解決。對應的是非虛函數。安全
多態:C++多態性是經過虛函數來實現的,虛函數容許子類從新定義成員函數,而子類從新定義父類的作法稱爲覆蓋或者稱爲重寫。而重載則是容許有多個同名的函數,而這些函數的參數列表不一樣,容許參數個數不一樣,參數類型不一樣,或者二者都不一樣。關於多態,簡而言之就是用父類型別的指針指向其子類的實例,而後經過父類的指針調用實際子類的成員函數
總結:一種調用,多種狀態(一個接口,多種方法)。ide