zoukankan      html  css  js  c++  java
  • C++继承和派生

    1.继承和派生:

    • 继承和派生是同一个过程从不同角的度看

    • 保持已有类的特性而构造新类的过程称为继承。

    • 在已有类的基础上新增自己的特性而产生新类的过程称为派生。

    • 被继承的已有类称为基类(或父类)。

    • 派生出的新类称为派生类(或子类)。

    • 直接参与派生出某类的基类称为直接基类。

    • 基类的基类甚至更高层的基类称为间接基类。

    2.使用语法:

    • 单继承:
               派生类名 继承方式  基类名
          class derived: public base
          {
          }
    
    • 多基层:
               派生类名 继承方式  基类名,继承方式  基类名
          class derived: public base1,private base2
          {
          }
    

    3.继承方式:

    • 公有继承
    • 私有继承
    • 保护继承
    1. 公有继承:
    • 派生类中的成员函数:可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员;

    • 通过派生类的对象:只能访问public成员。

    1. 私有继承
    • 派生类中的成员函数:可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员;

    • 通过派生类的对象:不能直接访问从基类继承的任何成员。

    1. 保护继承
    • 派生类中的成员函数:可以直接访问基类中的public和protected成员,但不能直接访问基类的private成员;

    • 通过派生类的对象:不能直接访问从基类继承的任何成员

    //公有继承                      对象访问    成员访问
    
    public    -->  public              Y         Y
    
    protected -->  protected           N         Y
    
    private   -->  private             N         N
    
     
    
    //保护继承                      对象访问    成员访问
    
    public    -->  protected           N         Y
    
    protected -->  protected           N         Y
    
    private   -->  protected           N         N
    
     
    
    //私有继承                      对象访问    成员访问
    
    public    -->  private             N         Y
    
    protected -->  private             N         Y
    
    private   -->  private             N         N
    
    
  • 相关阅读:
    day34
    day33 UDP、进程
    Java RMI 框架(远程方法调用)
    Maven查看JAR包的依赖关系
    连接Oracle数据库的时候报了“Got minus one from a read call”
    Http、Socket和WebService协议之间的区别
    http 协议
    其它
    Jmeter-CSV data set config参数化
    英文
  • 原文地址:https://www.cnblogs.com/penuel/p/13150623.html
Copyright © 2011-2022 走看看