您的位置:首页 > 其它

继承属性

2017-07-11 19:19 141 查看
一、继承:

类的继承,是新的类从已有类那里得到已有的特性。或从已有类产生新类的过程就是类的派生。原有的类称为基类或父类,产生的新类称为派生类或子类。

     继承的格式 class 子类名 : 继承属性(公有,保护,私有) 父类名称



     子类继承的父类除构造函数析勾函数的所有。默认是私有继承

二、继承属性

公有继承 class D : public Base

  公有继承相当于,除了父类的构造函数和析构函数没有继承,其他的都被父类继承,原来父类是公有,继承在子类还是公有,保护还是保护,私有数据还是私有数据



 特别需要注意的就是:子类继承的父类私有数据不能通过子类的公有方法去访问,毕竟父类的私有是父类的私有,和子类的私有还是有区别的
beb0
,但是你要访问父类的私有可以通过父类的公有方法间接访问。



通过对象只能访问类的公有方法,要访问类的私有数据只有通过公有方法。

保护继承 class D : protect Base

保护继承相当于,除了父类的构造函数和析构函数没有继承,其他的都被父类继承,原来父类的公有,继承在子类变为保护,保护还是保护,私有数据还是私有数据。

类的保护方法,依旧不能被对象调用。子类保护继承了父类,就不能通过对象调用父类的公有方法(原因是保护继承,父类原来的公有方法在子类已经变成保护,保护就不能通过对象调用)

 

私有继承 class D : private Base

  私有继承相当于,除了父类的构造函数和析构函数没有继承,其他的都被父类继承,原来父类的公有,继承在子类变为私有,保护变成私有,私有数据还是私有数据。

     此时子类中继承着父类所有的属性在子类中都会

 

私有继承子类可以父类的全部当成它的"私有成员"(除了构造、析勾函数),要访问私有成员可以访问借助公有方法;但是父类的私有数据就不能被子里访问。

对象永远只能访问公有方法,保护的话类内部方法可以访问类中的公有和保护



三、总结

    任何属性的继承:

1.首先构造函数、析勾函数不能被继承。

.其次父类的私有数据不能被直接访问,

3最后假如public属性的继承就把父类中public、protected、private在子类的还是该性质,只不过父类的私有不能被访问。

protect属性的继承就把父类中public、protected、private在子类的public看成protected、protected不变、private不变。并且父类的私有不能被子类直接访问。

private属性的继承就把父类中public、protected、private在子类的public看成private、protected看成private、private不变。并且父类的私有不能被子类直接访问


 

    

 

 

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息