C++学习笔记17 继承
2014-09-08 09:59
274 查看
继承:
面向对象中的继承指类之间的父子关系
子类拥有父类的所有成员变量和成员函数
子类就是一种特殊的父类
子类对象可以当作父类对象使用
子类可以拥有父类没有的方法和属性
继承时候的访问级别设定会影响到成员的访问级别
class Child: Parent
{}
等价于
class Child: private Parent
{}
注意:
C++中class的继承默认为private继承;
private继承的子类拥有父类的所有成员
private继承使得父类的所有成员在子类当中变为private成员
类成员访问级别设置的原则:
需要被外界访问的成员直接设置为public;
只能在当前类中访问的成员设置为private;
只能在当前类中和子类中访问的成员设置为protected;
private成员在子类依然存在,只是不能访问到;
公式:
继承成员对外的访问属性
=Max{继承方式,父类成员访问级别}
总结:
继承是一种类之间的关系,子类是一种特殊的父类;
子类通过继承可以得到父类的所有成员;
private成员可以被子类继承但不能被子类访问
protected成员只能在当前类和子类中访问
不同的继承方式可能改变继承成员的访问属性。
面向对象中的继承指类之间的父子关系
子类拥有父类的所有成员变量和成员函数
子类就是一种特殊的父类
子类对象可以当作父类对象使用
子类可以拥有父类没有的方法和属性
继承时候的访问级别设定会影响到成员的访问级别
class Child: Parent
{}
等价于
class Child: private Parent
{}
注意:
C++中class的继承默认为private继承;
private继承的子类拥有父类的所有成员
private继承使得父类的所有成员在子类当中变为private成员
类成员访问级别设置的原则:
需要被外界访问的成员直接设置为public;
只能在当前类中访问的成员设置为private;
只能在当前类中和子类中访问的成员设置为protected;
private成员在子类依然存在,只是不能访问到;
public | protected | private | |
public | public | protected | private |
protected | protected | protected | private |
private | private | private | private |
继承成员对外的访问属性
=Max{继承方式,父类成员访问级别}
总结:
继承是一种类之间的关系,子类是一种特殊的父类;
子类通过继承可以得到父类的所有成员;
private成员可以被子类继承但不能被子类访问
protected成员只能在当前类和子类中访问
不同的继承方式可能改变继承成员的访问属性。
相关文章推荐
- Effective C++ 学习笔记(17)
- [C++学习笔记]继承
- C++学习笔记1:virtual 继承
- c++入门学习笔记继承
- C++学习笔记――继承和组合
- C++学习笔记-类的继承(派生类)
- C++学习笔记十九-多重继承与虚继承
- 【菜鸟C++学习笔记】17.指针在堆中的操作
- C++中继承方式与访问标号的学习笔记
- C++学习笔记(8)——继承中的二义性问题和虚基类
- C\C++ 程序员从零开始学习Android - 个人学习笔记(八) - java基础 - 继承、抽象类、接口、内部类(待续)
- 钱能C++程序设计教程第10章继承学习笔记
- C\C++ 程序员从零开始学习Android - 个人学习笔记(八) - java基础 - 继承、抽象类、接口、内部类(待续)
- C++学习笔记4-----类的继承第二篇
- C++学习笔记4-----类的继承基础概念
- C++学习笔记:继承
- C++学习笔记(17)——虚函数与构造函数、析构函数
- c++入门学习笔记继承
- 2012/1/31 《C++ Primer Plus》第十三章:类继承 学习笔记
- c++学习笔记--继承的赋值