C++继承性和多态性(三)

继承方式总结:

C++继承性和多态性(三)

分析上表:

  基类中的私有成员在派生类中均为不可访问

 其他成员总是在自身访问属性继承方式中选择较严格者作为派生类中成员的访问属性。

  比较私有继承和保护继承:

  直接派生类中的实际作用是相同的,即在类外都不能访问,类中的成员函数可以访问。

 

  新的派生类中的作用不同,即原来私有基类中的成员在新类中都不能访问,原来保护基类中的成员可以在新类中被访问。

  由此看出:

  公有继承是一种可持续式的继承;

    注意:欲在派生类中引用的基类成员,不要声明为私有属性。

  私有继承是一种绝断式的继承;

    注意:再次派生将变得没有意义。

  保护继承是一种隔绝式的继承;

    注意:类外不能访问该派生类中的任何成员(包括成员函数)

 

  派生类成员有4种访问属性,如下:

C++继承性和多态性(三)

多级派生时的访问属性:

 

  AB构成直接基类和直接派生类的关系;

  BC构成直接基类和直接派生类的关系;

 

  AC构成间接基类和间接派生类的关系。 

          A <---- B <---- C 

C++继承性和多态性(三)

可见:类的成员在不同作用域中有不同访问属性;

 

  私有成员只能在本类中被访问,毕竟派生类和基类不是同一个类;

posted @ 2014-05-18 19:02  dreamsyeah  阅读(188)  评论(0编辑  收藏  举报