1. 什么是类的继承与派生
继承性是面向对象程序设计的第二个重要特性,通过继承实现了数据抽象基础上的代码重用
继承是对许多问题中分层特性的一种自然描述,因而也是类的具体化和被重新利用的一种手段,它所表达的就是一种对象类之间的相交关系
它使得某类对象可以继承另外一类对象的特征和能力
继承所具有的作用有两个方面:一方面可以减少代码冗余;另一方面可以通过协调性来减少相互之间的接口和界面
通过继承方式定义的子类也称为派生类
2. 类的三种继承方式之间的区别是什么
类的继承方式有public(公有)继承、protected(保护)继承和private(私有)继承三种
对于不同的继承方式,会导致基类成员原来的访问属性在派生类中有所变化
1 列出了不同继承方式下基类成员访问属性的变化情况
1 不同继承方式下基类成员的访问属性 访问属性 继承方式 public protected private public public protected 不可访问的 protected protected protected 不可访问的 private private private 不可访问的 说明: 该表第1 列给出3 种继承方式,第1 行给出基类成员的3 种访问属性
其余单元格内容为基类成员在派生类中的访问属性
从表中可以看出: (1) 基类的私有成员在派生类中均是不可访问的,它只能由基类的成员访问
(2) 在公有继承方式下,基类中的公有成员和保护成员在派生类中的访问属性不变
(3) 在保护继承方式下,基类中的公有成员和保护成员在派生类中均为保护的
(4) 在私有继承方式下,基类中的公有成员和保护成员在派生类中均为私有的
需要注意的是: 保护成员与私有成员唯一的不同是当发生派生后 ,处 在基类protected 区的成员可被派生类直 接访问,而私有成员在派生类中是不