继承
程序员文章站
2022-06-19 21:17:29
...
class RichMan //一个快要退休的富豪
{
public: //自己(基类),创业伙伴(有元),儿子(子类),其他人(外部)都可访问
int m_company;
private: //仅自己(基类),创业伙伴(有元)可以访问
int m_money;
int m_car;
protected: //自己(基类),创业伙伴(有元),儿子(子类)可以访问,其他人(外部)不可访问
int m_house;
};
/*不管采用何种继承方式,爸爸的钱和汽车都还是爸爸自己的;
翻译成计算机语言就是父类private成员对子类不可见*/
/*在中国的民间故事中,大儿子多半勤劳勇敢,二儿子多半又懒又馋;
*小儿子和大儿子一样品行很好,就是不太勇敢*/
//大儿子选择了公有继承,效果如下
//大儿子继续经营爸爸的公司,住爸爸的房子,但是爸爸的车子和钱是拿不到了
//public成员保持不变;protected成员也保持不变
//一切照旧
class oldestChild :public RichMan
{
public:
int m_company;
protected:
int m_house;
};
//二儿子选择私有继承,可以判断二儿子是一个自私的人
//自己独占公司和房子,除了自己和有元,任何方式不得访问
//public 和 protected成员权限都变成private;
//一句话说,能得到的全都要变成自己独有的
class secondChild :
private RichMan
{
private:
int m_company;
int m_house;
};
//畏畏缩缩的小儿子选择的保护继承,公司和房子自此外人是不可以访问的。
//public的权限变成protected,protected保持不变
class youngestChild:
protected RichMan
{
protected:
int m_company;
int m_house;
};
上一篇: 继承
下一篇: 关于MANIFEST.MF的内容认识