首页 > 其他分享 >继承

继承

时间:2023-06-06 23:22:38浏览次数:27  
标签:继承 成员 基类 private 派生类 构造函数

子类和父类(基类和派生类)

派生的四个步骤:
1.继承基类成员:除构造函数与析构函数外全部继承。
2.改造基类成员:同名成员变量和成员函数覆盖,否则是重载。
3.发展新成员
4.重写构造函数与析构函数。

继承的特性:
1.构造函数调用:创建派生类的对象时,先依次调用基类的构造函数,后执行派生类的构造函数。
2.析构函数调用:与构造函数调用顺序相反。

继承的使用:

格式如下:
class 派生类名:继承方式 基类名{
派生类新增加的成员
};
实例:
class Student: public People{
// 派生类新增加的成员
}
继承方式可选,如果不写,默认为 private(结构体struct,默认是public)

1.不同继承方式对不同属性的成员的影响结果

注:由于 private 和 protected 继承方式会改变基类成员在派生类中的访问权限,导致继承关系复杂,所以实际开发中我们一般使用 public。
2.使用using关键字可以改变基类成员在派生类中的访问权限。但是using只能改变基类中public和protected成员的访问权限,不能改变private成员的访问权限,因为基类中private成员在派生类中是不可见的,根本不能使用,所以基类中的private成员在派生类中无论如何都不能访问。
注:using会破坏程序的原有体系,不建议使用。

标签:继承,成员,基类,private,派生类,构造函数
From: https://www.cnblogs.com/kbqlm/p/17462035.html

相关文章

  • Python 子类继承了多个父类 , MRO查找调用方法
      在Python中,如果一个子类继承了多个父类,而这些父类中都有同名的方法或属性,那么子类在调用这个方法或属性时,会按照MRO(MethodResolutionOrder,方法解析顺序)的规则进行查找和调用。在Python中,MRO的顺序是由C3算法计算出来的。C3算法是一种基于拓扑排序和合并的算法,用......
  • QA|定义的basepage在被a、b继承后,先后对a、b实例化调用后,存在b实例找不到driver问题|U
      iops登录后,需要对登录后的iops主页操作:点击对应按钮,如下 此时我需要调试一下iops_home_page.py中的代码,但需要先登录才调试这块代码,代码如下:运行:结果起来两个浏览器,没有点击进去 或者有时会报错:找不到ih的属性:self.driver()原因:因上面iops_homepage没有继承上lo......
  • C++继承
      三类继承方式子类会将父类的所有非静态成员属性继承过来,只不过编译器隐藏了父类的私有属性,子类不可以访问。 1classBase{2public:3inta_;4protected:5intb_;6private:7intc_;8};910classSon:publicBase{11pu......
  • Godot的几个附加脚本和进行继承时比较特别的特性
    注:这是在Godot4.0中总结出的内容,并且语言是C#。特别的,下面有的特性和C#关系比较大。基本特性在Godot中,为某个节点编写特别的代码时,需要为节点新建脚本,或引用已有脚本。引用脚本时,填入脚本路径即可,相当于是复用代码了。新建脚本时,一般做法是新建一个自定义类型,并且......
  • java继承
    1.为什么要使用继承多类之间拥有相同的属性或是方法;解决方式是将相同的属性和方法抽取出来封装到一个新的类中,并继承新的类。2.继承语法AextendsB如果AextendsB得出结论;A是B的子类;B是A的父类java中一个类只能继承一个父类(单继承关系)继承的关键字是extends3.supersupe......
  • Java官方笔记6继承
    继承Java只有单继承,最顶级的父类是Object。子类会继承父类的fields和methods,而不会继承constructors,因为constructors不属于methods,但是子类可以通过super调用父类的constructor。子类继承父类的范围是:public、protected、package-private隐式转换,子类转父类(只有1个爸爸):Objec......
  • UE4 Standalone Object继承树
    objclassesObject(48)GCObjectReferencer(120)TextBuffer(88)Field(56)Struct(192)ScriptStruct(208)MovieSceneKeyStructType(400)UserDefinedStruct(312)AISenseBlueprintListener(312)Class(632)......
  • 【C++】c++单继承、多继承、菱形继承内存布局(虚函数表结构)
    单继承:只有一个基类和一个派生类classBase{public:virtualvoidfun1(){cout<<"Base::func1()"<<endl;}virtualvoidfun2(){cout<<"Base::func2()"<<endl;}private:intb;......
  • C++多态虚函数表详解(多重继承、多继承情况)
    本文关键词:C++多态多继承多重继承虚函数表虚函数指针动态绑定概述:C++相对其他面向对象语言来说,之所以灵活、高效。很大程度的占比在于其多态技术和模板技术。C++虚函数表是支撑C++多态的重要技术,它是C++动态绑定技术的核心。本文章将着重图解虚函数表相关知识,在阅读本文......
  • 继承中构造方法案例
    /***创建一个教师类,有姓名和年龄两个参数*打印出比如“姓名为张三年龄30岁的老师正在讲课”*创建一个学生类,有姓名,年龄,成绩三个参数*打印出比如“姓名为李四年龄20岁成绩100分的学生正在上课”*///测试类publicclasstest1{publicstaticvoidmain(String[......