zoukankan      html  css  js  c++  java
  • 101.C++继承三种权限

    三种访问权限

    public:可以被任意实体访问

    protected:只允许子类及本类的成员函数访问

    private:只允许本类的成员函数访问

    三种继承特点

    1、public继承不改变基类成员的访问权限

    2、private继承使得基类所有成员在子类中的访问权限变为private  (基类的private变量在子类中永远无法访问)

    3、protected继承将基类中public成员变为子类的protected成员,其它成员的访问 权限不变。 (基类的private变量在子类中永远无法访问)

    4、基类中的private成员不受继承方式的影响,子类永远无权访问

    代码示例

     1 #include <iostream>
     2 using namespace std;
     3 
     4 
     5 class myclass
     6 {
     7 public:
     8     int x = 10;
     9     void go1()
    10     {
    11 
    12     }
    13 private:
    14     int y = 20;
    15     void go2()
    16     {
    17 
    18     }
    19 protected:
    20     int z = 30;
    21     void go3()
    22     {
    23 
    24     }
    25 };
    26 
    27 //public公有继承,私有数据无法访问,
    28 //公有成员仍然公有,保护成员仍然是保护成员
    29 class newclass :public myclass
    30 {
    31 public:
    32     void show()
    33     {
    34         go1();
    35         //不能调用私有变量
    36         //go2();
    37         go3();
    38     }
    39 };
    40 
    41 //私有继承全部都变成私有
    42 class newclass2 : private myclass
    43 {
    44 
    45 };
    46 
    47 //公有,保护,统一变成保护
    48 class newclass2 : protected myclass
    49 {
    50 
    51 };
    52 
    53 
    54 
    55 void main()
    56 {
    57     newclass mynew1;
    58 }
  • 相关阅读:
    Android之动态图片
    Java之简单图形面积计算
    Java之姐妹素数
    Java之经典Student问题2
    数据库事务四大特性
    TCP/IP分层
    海量数据问题处理办法
    36个常见java面试题
    【19】【滑动窗口】【栽跟头】最长不重复子字符串
    一些面试题
  • 原文地址:https://www.cnblogs.com/xiaochi/p/8603008.html
Copyright © 2011-2022 走看看