简单了解继承与派生


     一个新类从已有的类那里获得已有的特性,这种现象称为类的继承。同样也可以说成已有的类派生出来了新的类。类A继承自类B也就是类B派生了类A。所以继承和派生的关系就像小学时把字句和被字句的造句一样。有了继承与派生后,就有了父类/基类与子类/派生类,C++中将类B称为父类/基类,将类A称为子类/派生类。

1、基本概念

类的继承是一个新的类从已有的类那里得到已有的特性; 类的派生是从已有的类产生新的类的过程。并且我们称原有的类称为基类或者父类,产生新的类称为派生类或者子类。

2、单继承,多重继承

单继承:一个新类只继承了一个基类(父类)

多重继承:一个新类同时继承了多个基类

3、继承的方式

C++中的继承方式有三种:public, private, protected. 继承方式的声明就是指定了子类成员以及类外对象对子类成员变量的访问权限。通常情况下,子类的声明时要写继承方式,如果没有写出继承方式的话,则默认为private继承

4、公有继承

对于公有继承的情况,基类的公有和保护成员的访问属性在派生类中不变,而基类的私有成员是不可访问的。换句话说,基类的公有成员和保护成员被继承到派生类中仍作为派生类的公有成员和保护成员。派生类的其他成员可以直接访问他们。切记,无论是派生类的成员还是派生类的对象都无法访问基类的私有成员。


5、私有继承

当类的继承方式为私有继承时,基类中的公有成员和保护成员都以私有成员身份出现在派生类中,而基类的私有成员在派生类中不可访问。基类的公有成员和保护成员被继承后作为派生类的私有成员,派生类的其他成员可以直接访问它们,但是在类外部通过派生类的对象无法访问。无论是派生类的成员还是通过派生类的对象,都无法访问从基类继承的私有成员。通过多次私有继承后,对于基类的成员都会成为不可访问。因此私有继承比较少用。

6、保护继承

保护继承中,基类的公有成员和私有成员都以保护成员的身份出现在派生类中,而基类的私有成员不可访问。派生类的其他成员可以直接访问从基类继承来的公有和保护成员,但是类外部通过派生类的对象无法访问它们,无论派生类的成员还是派生类的对象,都无法访问基类的私有成员。


7、相互的联系

(1)作用对象不同:继承作用于派生类,即子类,描述子类继承父类的成员的一种行为; 派生作用于基类,描述基类产生子类的一种行为。

(2)相互依存:如果以类是派生类,那么该类就继承父类的成员;反之一个类继承父类的成员,该类的父类的派生类。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值