C++面向对象:三种继承方式详解
总结在文末,需要快速查看的请移步
什么是继承?
继承属于面向对象中的内容。
首先编写一个类为父类(基类)另一个类叫子类(派生类)。
在父类中会设置一些权限,被继承的子类可以访问相应权限的内容。
- 子类只能访问父类的protected和public权限的内容
- 子类不能访问父类private权限的内容,因为那是父类所私有的。
语法 : class 子类 : 继承方式 父类
但是有三种继承方式:public 继承、protected继承和private继承
。
不同的继承方式可以在子类中进行权限的修改
如上图都是public 继承。
public继承
public继承十分简单,就是原来的父类是什么权限,使用public继承并不对权限进行修改。
父类权限 | public继承之后的权限 |
---|---|
public/private/protected | 仍然是 public/private/protected |
protected继承
protected继承就是将public权限设置称protected,意思就是说,最高权限就是protected
父类权限 | protected继承之后的权限 |
---|---|
public | 变成protected |
protected | 仍然是protected |
private | 仍然是private |
private继承
在类中最高属性就是私有的,外面绝对访问不到
父类权限 | private继承之后的权限 |
---|---|
public/private/protected | 统统都是private |
总结
- 什么样的继承方式,就预示着这个子类
最高的权限
是什么。 - 比如protected继承。那么这个子类最高只能有protected权限,public权限需要降级,其他权限不变。
- 同理private继承,protected权限和public权限需要降级。
本文来自博客园,作者:{Zeker62},转载请注明原文链接:https://www.cnblogs.com/Zeker62/p/15046172.html