• C#基础知识之父子类,实例、静态成员变量,构造函数的执行顺序(经典示例)


    父子类、示例、静态成员变量、构造函数的概念的基础理解完全可以利用下面的示例诠释,非常经典,直接上代码:

    public class ShowInfo
        {
            public ShowInfo(string info)
            {
                Console.WriteLine(info);
            }
        }
    
        class father
        {
            public static ShowInfo StaticFatherMember = new ShowInfo("父类静态成员变量执行"); //父类静态成员变量
            public ShowInfo InstanceFatherMember = new ShowInfo("父类实例成员变量执行");     //父类实例成员变量
            static father()         //父类构造函数  
            {
                ShowInfo StaticFatherMethod = new ShowInfo("父类静态构造函数执行");     //父类静态构造函数
            }
            public father()
            {
                ShowInfo bcsI = new ShowInfo("父类实例构造函数执行");
            }
        }
        class son : father
        {
            public static ShowInfo StaticSonMember = new ShowInfo("子类静态成员变量执行");
            public ShowInfo InstanceStaticSonMember = new ShowInfo("子类实例成员变量执行");
    
            static son()
            {
                ShowInfo StaticSonMethod = new ShowInfo("子类静态构造函数执行");
            }
            public son()
            {
                ShowInfo InstanceSonMethod = new ShowInfo("子类实例构造函数执行");
            }
        }
        class Program
        {
            static void Main(string[] args)
            {
                //各个对象的初始化顺序如下:  
                //①子类静态成员变量  
                //②子类静态构造函数  
                //③子类实例成员变量  
                //④父类静态成员变量  
                //⑤父类静态构造函数  
                //⑥父类实例成员变量  
                //⑦父类构造函数  
                //⑧子类构造函数  
                son s = new son();
                Console.ReadKey();
            }
        }
    View Code

    来看看最后的输出结果: 

     

    这个例子非常有意思,考察的全部是基础知识,从静态非静态,父子类的基础知识分析,结婚不难得出。

  • 相关阅读:
    [HAOI2008]下落的圆盘
    10.2 上午 考试
    10.1 考试 ..........
    9.29 考试
    博弈论笔记
    bzoj_1022: [SHOI2008]小约翰的游戏John
    课程总结第十五周
    团队冲刺第二阶段09
    团队冲刺第二阶段08
    对搜狗输入法的评价
  • 原文地址:https://www.cnblogs.com/qtiger/p/11177086.html
Copyright © 2020-2023  润新知