• C++入门经典-类成员的可访问性,继承后的可访问性


    1:关键字public、private、protected说明类成员是共有的、私有的,还是保护的。这3个关键字将类划分为3个区域,在public区域的类成员可以在类作用域外被访问,而private区域和protected区域只能在类作用域内被访问。

    2:这3种类成员的属性如下:

    public属性的成员对外可见,对内可见。

    private属性的成员对外不可见,对内可见。

    protected属性的成员对外不可见,对内可见,对派生类可见。

    3:继承后可访问性。继承方式有public、private、protected这3中继承方式,其说明如下:

    (1)共有型派生

        共有型派生表示对于基类中的public数据成员和成员函数,在派生类中仍然是public,对于基类中的private数据成员和成员函数,在派生类中仍然是private。

    (2)私有型派生

        私有型派生表示对于基类中的public、protected数据成员和成员函数,在派生类中可以访问。在派生类中不可以访问基类的private数据成员。

    (3)保护性派生

       保护型派生表示对于基类中的public、protected数据成员和成员函数,在派生类中均为protected。protected类型在派生类的定义时可以被访问, 用派生类声明的对象不可以访问。protected成员可以被基类的所有派生类使用。这一性质可以沿着继承树无限向下传播。

        因为保护型的派生类的内部数据不能被随意修改,该类的维护只有在内部运行,这就起到很好的封装作用。把一个类分为两部分,一部分是公共的,另一部分是保护,保护成员与使用者来说是不可见的,也是不需要了解的,这就减少了类与其他代码的关联程度。类的功能是独立的,它不依赖与应用程序的运行环境,即可以放到这个程序中使用,也可以放到另一个程序中使用。则就能够非常容易的用到一个类替换另一个类。类访问限制的保护机制使人们编制的应用程序更加可靠和易维护。

  • 相关阅读:
    UVa 11181 (条件概率) Probability|Given
    UVa 1636 (概率) Headshot
    UVa 1262 (第k字典序) Password
    HDU 4746 (莫比乌斯反演) Mophues
    HDU 1695 (莫比乌斯反演) GCD
    POJ 3090 (欧拉函数) Visible Lattice Points
    CodeForces Round #283 Div.2
    UVa 10820 (打表、欧拉函数) Send a Table
    UVa 1635 (唯一分解定理) Irrelevant Elements
    Java基础10 接口的继承与抽象类
  • 原文地址:https://www.cnblogs.com/lovemi93/p/7569793.html
Copyright © 2020-2023  润新知