首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

种的继承和派生

2012-08-27 
类的继承和派生单继承class 派生类名:继承方式 基类{? 成员声明;}?多继承class 派生类名:继承方式 基类1,

类的继承和派生

单继承

class 派生类名:继承方式 基类

{

? 成员声明;

}

?

多继承

class 派生类名:继承方式 基类1,继承方式 基类2 ,...

{

? 成员声明;

}

?

公有继承

基类的public和protected成员的访问属性在派生类忠保持不变,基类的private成员不可访问。

派生类中的成员函数可以直接访问基类忠的public和protected成员,但不能访问基类的private成员。

通过派生类的对象只能访问基类的public成员。

?

私有继承

基类的public和protected成员都以private身份出现在派生类中,但基类的private成员不可访问。

派生类中的成员函数可以直接访问基类忠的public和protected成员,但不能访问基类的private成员。

通过派生类的对象不能访问基类中的任何成员。

?

保护继承

基类的public和protected成员都以protected身份出现在派生类中,但基类的private成员不可访问。

派生类中的成员函数可以直接访问基类忠的public和protected成员,但不能访问基类的private成员。?

通过派生类的对象不能访问基类中的任何成员。

?

protected 成员特点:

在建立其所在类对象的模块来说,它与private成员的性质相同。

对其派生类来说,它与public成员的性质相同。

即实现了数据隐藏,又方便继承,实现了代码重用。

?

继承是的构造函数

基类的构造函数不被继承,需要在派生类中自行声明。

声明构造函数时,只需要对本类中新增成员进行初始化,对继承来的基类成员的初始化由基类完成。

?

单一继承的构造函数

派生类名::派生类名 (基类形参,本类形参):基类名(参数)

{

? //本类成员初始化赋值
}

?

多继承的构造函数

派生类名::派生类名 (基类1形参,基类2形参,基类3形参,....本类形参):基类名1(参数),基类名2(参数)基类名3(参数)

{

? //本类成员初始化赋值
}

?

派生类与基类的构造函数

当基类中声明有缺省形式的构造函数或未声明构造函数时,派生类构造函数的声明中可以省略对基类构造函数的调用。

若基类中未声明构造函数,派生类中也可以不声明,全采用缺省形式的构造函数。

当基类声明有带形参的构造函数时,派生类也应声明带的构造函数,提供将参数传递给基类构造函数的途径。

热点排行