继承和派生

来源:互联网 发布:au mac 破解 编辑:程序博客网 时间:2024/06/10 09:14

继承定义:                                                                                                                  派生定义:

新的类从已有的类那里得到已有的特性                                                                   从已有的类产生新的类的过程


原有的类称为基类  (父类)                   派生出的类称为派生类(子类)


多继承:一个派生类可以有多个父类

单继承:一个派生类中只有一个直接父类


直接参与派生出的某类的父类称为直接基类

 间接参与派生出的某类的父类的父类或更高层的基类称为间接基类


继承写法:

class 派生类:继承方式   基类 1,继承方式  基类 2,继承方式  基类 3,继承方式  基类 4,…………



基类的调用

class new:派生类型  old{  地点1   }

int   main(){     地点2  }

public继承

定义:

当类的继承方式为公有继承时,基类的公有成员和保护成员的访问属性在派生类中不变,而基类的私有成员不可直接访问。

派生类继承的成员类型                                  地点1                                                               地点2

public                                                             直接调用                                                 通过派生类对象的公有成员访问

protected                                                       直接调用                                                         无法直接访问

private                                                            无法直接访问                                                  无法直接访问

protected继承

定义:

基类的的公有成员和保护成员都以保护成员的身份出现在派生类中,基类的私有成员不可直接访问。

派生类继承的成员类型                                  地点1                                                               地点2

public                                                              直接调用                                                           无法直接访问

protected                                                       直接调用                                                            无法直接访问

private                                                           无法直接访问                                                     无法直接访问

private继承

定义:基类的的公有成员和保护成员都以私有成员的身份出现在派生类中,基类的私有成员不可直接访问。

派生类继承的成员类型                                  地点1                                                               地点2

public                                                               直接访问                                                        无法直接访问

protected                                                          直接访问                                                       无法直接访问

private                                                             无法直接访问                                                 无法直接访问



派生类的构造函数和析构函数

派生类构造函数的一般语法:

派生类名::派生类(参数表):基类名1(基类1初始化列表),基类名2(基类2初始化列表),基类名3(基类3初始化列表),……


派生类构造函数的执行次序:
1、调用基类构造函数,调用顺序按照他们被继承时声明顺序(left ->right)
2、对派生类新增的成员对象初始化,调用顺序按照它们再类中声明的顺序
3、执行派生类的 构造函数体的内容
  
析构函数的次序和构造函数的次序相反






原创粉丝点击