zoukankan      html  css  js  c++  java
  • 继承

    面对对象的三个主要特征: 封装,继承,多态。

    而继承,通过继承机制,可以利用已有的数据或者方法来定义一个新的数据类型。

    父类:已经存在的数据或者方法,叫做基类。

    子类:由已经存在的类派生出来的新类,叫做派生类。

    1 class a{
    2 
    3 };
    4 
    5 class b : public a{
    6 
    7 };

    对于上面这两个类,a是基类,b是派生类,a是b的父类,b是a的子类。

    注意:

    1.父类的所有成员变量和成员函数,子类都拷贝了一份。但是父类的私有成员子类是没法访问的,父类的保护成员可以在子类中访问,当不可以在外部访问。

    2.先构建父类,在构建子类,但会先析构子类,再析构父类。

    3.在子类的初始化列表中构建父类,可以通过子类构造函数传递值给父类的方式初始化父类成员变量。

    4.子类要访问隐藏的成员变量或方法,必须明确指出父类:例如Child.Father::show();

    隐藏:如果子类定义了和父类一样的成员函数或者成员变量,子类会自动隐藏父类的相同版本。(重载)

    重载和隐藏的区别:() 

    隐藏是父子类之间,不在同一个作用域,而重载是相同作用域

    重载是函数名相同参数列表不同,而隐藏必须是函数名相同,参数列表也相同。

    对于继承,有三种继承的方式:

    1.公有继承:public,子类不会改变任何的访问限定,父类的私有成员子类没法访问,父类的公有成员子类也是公有的,父类的保护成员在子类也是保护的。

    2.私有继承:private,父类的私有成员变量,子类没办法访问;父类的公有成员变量,在子类中变成私有;父类的保护成员变量在子类中变成私有。即父类的所有公有和保护成员,在子类中,都是私有。

    3.保护继承:protected,父类的私有成员不可访问,父类的公有和保护都变成子类的保护。

  • 相关阅读:
    图片轮播切换
    php用get_meta_tags轻松获取网页的meta信息
    PHP创建桌面快捷方式实例
    php 获取网站根目录的写法
    php mkdir 创建多级目录实例代码
    php计算剩余时间的自定义函数
    php实现获取汉字的首字母实例
    PDO封装函数
    Struts动态表单(DynamicForm)
    [WPF]静态资源(StaticResource)和动态资源(DynamicResource)
  • 原文地址:https://www.cnblogs.com/ouyang_wsgwz/p/8438562.html
Copyright © 2011-2022 走看看