继承知识总结
继承知识总结
继承
- 定义:所谓继承就是从先辈处得到属性和行为特征。
- 类的继承,是从新的类从已有类那里得到已有的特性。
- 继承的好处:解决了代码的重用性和可扩充性。
继承的方式
公有继承
当类的继承方式为公有继承时,基类的公有成员和保护成员的访问属性在派生类中不变,而基类的私有成员不可直接访问。
- 基类的公有成员和保护成员被继承到派生类中访问属性不变。仍作为派生类的公有成员。
- 无论是派生类的成员还是派生类的对线都无法直接访问基类的私有成员。
运行结果如下:
私有继承
当类的继承方式为私有继承时,基类中的公有成员和保护成员都以私有成员的身份出现在派生类中,而基类的私有成员在派生类不可直接访问。派生类的其他成员可以访问基类的公有和保护成员,但是在类外无法通过派生类的对象访问他们。而对于基类的私有成员,派生类的成员无法直接访问。
如下实验:(可将上述实验中的继承方式变成私有继承)
但是会发生报错如下:
保护继承
在保护继承中,基类的公有成员和保护成员都以保护成员的身份出现在基类中,而基类的私有成员不可直接访问。
在直接派生类中,其访问限制与私有继承的效果是相似的,在派生类内部可以访问基类的公有、保护保护成员,而用过派生类的对象无法访问到基类的成员。但是,一旦出现了连续继承,保护继承和私有继承的效果就会出现明显不同。
再对前面例子进行实验: