C++ 继承

注意:派生类中访问基类成员权限跟该成员在基类的声明有关,其继承方式只是将该派生类封装起来,与外部的访问有关系。

继承:一个类自动拥有另一个类的所有成员

父类(基类)    子类(派生类)

子类自动拥有父类所有成员(不包括构造函数、析构函数、赋值运算符重载)

子类中包含两部分成员:1部分从父类继承得到,一部分是子类拓展

虽然发生继承,父类中私有成员在子类中不能直接访问,可以通过公有成员函数间接访问。


重写(覆盖):子类中函数和父类中函数完全相同

如果发生覆盖函数function():

父类对象调用函数,那么父类的成员函数被调用。

子类对象调用函数,那么子类的成员函数被调用。

如果调用被覆盖的父类函数,类名::成员名称

子类中初始化继承自父类的成员变量:调用父类的构造函数来完成初始化(使用初始化列表形式完成初始化)


继承的好处:代码的重用


子类通过函数(set   get方法)访问父类的私有变量


protected:受保护

主要使用在继承当中,对于子类来说是public  对于类外来说是private

一般父类成员变量会写成protected访问权限


继承的三种方式:private   public   protected   

private:父类中所有的成员在子类中访问权限全部变为private   

影响:1、儿子类private继承父亲类,对孙子类有影响。2、对类外访问产生影响。

protected:父类中public成员在子类中访问权限全部变为protected。父类中protected  private在子类中访问权限不变

public:父类中所有成员的访问权限不发生任何改变


c++中类之间主要的两种关系

1、组合:has-a   例如圆中有个点   自行车有两个车轮

2、继承 is-a 大学生是个学生   学生是个人    狗是个动物

共同的作用:代码重用

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值