首页 > 其他分享 >继承中的构造函数

继承中的构造函数

时间:2024-12-24 20:11:34浏览次数:3  
标签:Console 继承 子类 WriteLine 父类 public 构造函数

基本概念

当申明一个子类对象时,先执行父类的构造函数,然后再执行子类的构造函数

子类可以通过 base 调用父类构造函数


继承中的构造函数执行顺序

Class GameObject
{
    public GameObject()
    {
        Console.WriteLine("GameObject的构造函数")
    }
}
Class Player : GameObject
{
    public Player()
    {
        Console.WriteLine("Player的构造函数")
    }
}
Class MainPlayer : Player
{
    public MainPlayer()
    {
        Console.WriteLine("MainPlayer的构造函数")
    }
}
MainPlayer p = new MainPlayer();

class Father
{
    //父类的无参构造函数很重要
    //子类实例化时默认调用的是父类的无参构造,而父类没有无参构造时,子类就会报错
    public Father(int i )
    {
        Console.WriteLine("Father的构造函数");
    }
}
//用base调用父类指定构造函数
class Son : Father
{
    public Son(int i) : base(i)
    {
        Console.WriteLine("Son1的构造函数");
    }
    //用this调用public Son (int) : base (i)
    //间接调用了指定的父类构造函数
    public Son(int i,string str) : this(i)
    {
        Console.WriteLine("Son2的构造函数");
    }
}

标签:Console,继承,子类,WriteLine,父类,public,构造函数
From: https://www.cnblogs.com/cannedmint/p/18628596

相关文章

  • deque容器/构造函数/赋值操作/大小操作/插入和删除/数据存取/排序
    deque容器基本概念功能:双端数组,可以对头端进行插入删除操作deque与vector区别:vector对于头部的插入删除效率低,数据量越大,效率越低deque相对而言,对头部的插入删除速度会比vector块vector访问元素时的速度会比deque快,这和两者内部实现有关deque内部工作原理:deque内部有个中......
  • 继承的基本规则
    继承的基本概念一个类A继承一个类B类A将会继承类B的所有成员类A将拥有类B的所有特征和行为被继承的类称为父类、基类、超类继承的类称为子类、派生类子类可以有自己的特征和行为子类只能有一个父类,子类可以间接继承父类的父类基本语法//class类名:被继承的类名//{/......
  • 继承中成员变量和成员方法的访问特点-java se进阶篇 day01
    1.继承中成员变量的访问特点1.成员变量重名如图父类中有age变量,子类中也有age变量,这时打印age,出现的是10还是20呢?答:根据就近原则,出现的是202.使用父类成员变量--super如果就要使用父类中的age该怎么办?使用super关键字进行解决super关键字可以访问父类中的成员,从而解决......
  • 静态类和静态构造函数
    静态类用static修饰的类只能包含静态成员且不能被实例化staticclassTestStatic{//静态成员变量publicstaticinttestIndex=0;//静态方法publicstaticvoidTestFun(){}//静态成员属性publicstaticintTestIndex{......
  • 继承的介绍、使用-java se进阶 day01
    1.继承的介绍2.继承的使用为什么要使用继承?假如以后要写一个项目,其中程序员一个类,项目经理一个类,Hr一个类,但是这些类的成员都一样如图我们会发现这些成员都是重复的,三个类都写重复的成员十分繁琐,所以我们使用继承,假如有一个类-员工,里面都有这些对象,然后让Coder、Manager、Hr......
  • 请使用ES5实现类的继承
    在ES5中,我们通常使用原型链和构造函数的方式来实现类的继承。以下是一个简单的示例://父类functionAnimal(name){this.name=name;this.colors=['white','black'];}//父类原型上的方法Animal.prototype.speak=function(){console.log(this.name+......
  • 【C++有点难】默认成员函数:构造函数
    默认成员函数有啥?总的来说嘞,有六种:构造函数,析构函数,拷贝构造函数,赋值重载函数,取地址重载函数其实我刚知道有六种的时候,也是很头大,但经过我不但地旁敲侧击,终于!我逐渐明白第一种:构造函数的神奇那学习之前,肯定要了解一下构造函数的概念吧?构造函数的概念:构造函数作为一种默认......
  • 《 C++ 点滴漫谈: 十 》揭秘 C++ struct 的潜力:内存布局、继承、优化,你都掌握了吗?
    摘要本文全面解析了C++中的struct关键字,从其基本概念到高级应用,涵盖了struct的成员与访问控制、构造函数与析构函数、继承与多态,以及内存布局和现代C++的特性扩展。此外,文章详细探讨了struct与class的异同、与union的对比,并剖析了常见的误区与陷阱。结合丰富......
  • vector容器/构造函数/赋值操作/容量和大小/插入和删除/数据存储/互换容器/预留空间
    vector基本概念功能:vector数据结构和数组非常相似,也称为单端数组vector与普通数组区别:不同之处在于数组是静态空间,而vector可以动态扩展动态扩展:并不是在原空间之后续接新空间,而是找更大的内存空间,然后将元数据拷贝新空间,释放原空间vector容器的迭代器是支持随机访问的......
  • 14伪元素-CSS的继承和层叠-元素特性
    一、之前剩下的东西上节讲解了CSS常见的选择器:通用选择器,元素选择器,类选择器,id选择器,属性选择器,组合选择器,伪类选择器之前讲到伪类选择器非常多,但是使用的却不多,上次主要讲到动态伪类,其中:hover最重要。1、伪元素pseudo-elements常用的伪元素是::first-line::first-line:fir......