侧边栏壁纸
  • 累计撰写 218 篇文章
  • 累计创建 59 个标签
  • 累计收到 5 条评论

继承类型:public, protected & private

barwe
2022-07-23 / 0 评论 / 0 点赞 / 642 阅读 / 410 字
温馨提示:
本文最后更新于 2022-07-23,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

先定义两个基类:

class A {};
class B {};

C++ 支持多继承:

class C: public A, public B {};

继承基类时需要指定一个 访问修饰符,不指定时是 private,但是一般使用 public。

它们的区别是:

  • 如果 C 以 public 的方式继承 A,C 将 A 的 public 方法继承为自己的 public 方法,将 A 的 protected 方法继承为自己的 protected 方法,C 不能继承 A 的 private 方法
  • 如果 C 以 protected 的方式继承 A,C 将 A 的 public 方法和 protected 方法都继承为自己的 protected 方法,C 还是不能继承 A 的private 方法
  • 如果 C 以 private 的方式继承 A,C 将 A 的 public 方法和 protected 方法都继承为自己的 private 方法,C 仍然不能继承 A 的 private 方法

所以,继承基类时的访问修饰符决定了子类如何处理从基类继承的 public 方法和 protected 方法。

0

评论区