1.继承体现了面向对象设计的层次结构,体现了有捡到到复杂的认知过程
2.继承是使代码可以复用的最重要手段
3.继承方式和访问限定符
4.继承基类成员访问方式的变化
5.实际运用中一般都是使用public继承,几乎很少使用protected/private继承
6.派生类对象 可以赋值给 基类的对象 / 基类的指针 / 基类的引用
但是基类对象不能赋值给派生类对象
7.基类的指针可以通过强制类型转换赋值给派生类的指针。但是必须是基类的指针是指向派生类对象时才
是安全的。
8.基类和派生类都有各自独立的作用域,子类成员将屏蔽父类对同名成员的直接访问,这种情况叫隐藏,也叫重定义(与java重载不同)。(在子类成员函数中,可以使用 基类::基类成员 显示访问)
-
派生类对象初始化先调用基类构造再调派生类构造。
派生类对象析构清理先调用派生类析构再调基类的析构 - C++11给出了新的关键字final禁止继承,使用例:
class NonInherit final
{};
此时这个类不允许被继承
11.关于静态成员
基类定义了static静态成员,则整个继承体系里面只有一个这样的成员。无论派生出多少个子类,都只有一个static成员实例