1.繼承體現了面向對象設計的層次結構,體現了有撿到到複雜的認知過程
2.繼承是使代碼可以複用的最重要手段
3.繼承方式和訪問限定符
4.繼承基類成員訪問方式的變化
5.實際運用中一般都是使用public繼承,幾乎很少使用protected/private繼承
6.派生類對象 可以賦值給 基類的對象 / 基類的指針 / 基類的引用
但是基類對象不能賦值給派生類對象
7.基類的指針可以通過強制類型轉換賦值給派生類的指針。但是必須是基類的指針是指向派生類對象時才
是安全的。
8.基類和派生類都有各自獨立的作用域,子類成員將屏蔽父類對同名成員的直接訪問,這種情況叫隱藏,也叫重定義(與java重載不同)。(在子類成員函數中,可以使用 基類::基類成員 顯示訪問)
-
派生類對象初始化先調用基類構造再調派生類構造。
派生類對象析構清理先調用派生類析構再調基類的析構 - C++11給出了新的關鍵字final禁止繼承,使用例:
class NonInherit final
{};
此時這個類不允許被繼承
11.關於靜態成員
基類定義了static靜態成員,則整個繼承體系裏面只有一個這樣的成員。無論派生出多少個子類,都只有一個static成員實例