C#中父类与子类构造函数的调用顺序使用说明

 更新时间:2025年08月08日 09:22:35   作者:先学再说  
C#中父类构造函数优先于子类执行,实例化子类时会按继承层级依次调用各构造函数,输出顺序为父类→子类→孙类

C#父类与子类构造函数的调用顺序

我们先来建立一个父类,一个子类,一个子类的子类

    class BaseClass
    {
        private string name = "BaseClass";

        public BaseClass()
        {
            Console.WriteLine(name);
        }
    }


    class SubClass1:BaseClass
    {
        private string name = "SubClass1";

        public SubClass1()
        {
            Console.WriteLine(name);
        }
    }

    class SubClass1_1:SubClass1
    {
        private string name = "SubClass1_1";

        public SubClass1_1()
        {
            Console.WriteLine(name);
        }
    }

在构造函数中分别输出对应类内建立的私有变量name

在主函数中,输入

BaseClass bc=new SubClass1_1();

然后,运行

先想一想输入是什么

5
4
3
2
1

揭晓答案

我们看到,首先输出了父类BaseClass的变量值,然后是SubClass1,最后才是SubClass1_1的。

实例化父类时,可以通过new子类来实例化父类,执行构造函数的顺序为:先执行父类的构造函数,再执行子类的构造函数

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 深入理解C#之枚举

    深入理解C#之枚举

    这篇文章主要介绍了C#中可枚举类型,IEnumerable和IEnumerator接口及其泛型实现和迭代器,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • 如何:对Windows 窗体控件进行线程安全调用

    如何:对Windows 窗体控件进行线程安全调用

    使用多线程提高 Windows 窗体应用程序的性能时,必须注意以线程安全方式调用控件。
    2007-03-03
  • C# App.config和Web.config加密的实现步骤

    C# App.config和Web.config加密的实现步骤

    本文介绍了如何使用C#对App.config和Web.config文件进行加密,通过使用ConfigurationSection类和SymmetricAlgorithm类,我们可以保护配置文件中的敏感数据,确保只有授权人员可以访问
    2023-08-08
  • C#线程委托BeginInvoke与EndInvoke的用法

    C#线程委托BeginInvoke与EndInvoke的用法

    这篇文章介绍了C#线程委托BeginInvoke与EndInvoke的用法,文中通过示例代码介绍的非常详细。对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-07-07
  • C#利用iTextSharp组件给PDF文档添加图片/文字水印

    C#利用iTextSharp组件给PDF文档添加图片/文字水印

    这篇文章主要给大家介绍了关于如何C#利用iTextSharp组件给PDF文档添加图片/文字水印的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-10-10
  • 关于C#继承的简单应用代码分析

    关于C#继承的简单应用代码分析

    在本篇文章里小编给大家整理了一篇关于C#继承的简单应用代码分析内容,有兴趣的朋友们可以学习下。
    2021-05-05
  • C# IsDefined的问题

    C# IsDefined的问题

    这篇文章主要介绍了C# IsDefined的问题,通俗易懂,需要的朋友可以参考下。
    2016-06-06
  • WinForm实现页面按钮定时隐藏功能

    WinForm实现页面按钮定时隐藏功能

    这篇文章主要介绍了WinForm实现页面按钮定时隐藏功能,结合实例形式分析了WinForm基于定时器的页面控件属性动态操作相关实现技巧,需要的朋友可以参考下
    2017-05-05
  • WPF利用TabControl控件实现拖拽排序功能

    WPF利用TabControl控件实现拖拽排序功能

    在UI交互中,拖拽操作是一种非常简单友好的交互,这篇文章主要为大家介绍了WPF如何利用TabControl控件实现拖拽排序功能,需要的小伙伴可以参考一下
    2023-10-10
  • 解析C#网络编程中的Http请求

    解析C#网络编程中的Http请求

    这篇文章主要介绍了C#网络编程中的Http请求,不过这次也使我对C#网络编程了解的更多,算是一次学习经历吧,文章结合示例代码给大家介绍的非常详细,需要的朋友可以参考下
    2022-03-03

最新评论