C# 静态构造函数,静态变量执行顺序(升华版)

2021-06-18 04:04

阅读:591

上篇 是基本语法基础下的执行顺序,包括继承这个维度下的执行顺序,我们可以依照的规律顺下来,下面我们看下一些摸不到头脑的情况

我们实验 一个 类中的方法 去调用另一个非继承类的情况,  先看有 静态构造函数 和没有静态构造函数执行的差别

 

 


 class Program
    {
        static void Main(string[] args)
        {                                           //执行顺序5         
            var de = new People("2");               //执行顺序6     
            People.Instance.OutDemo();              //执行顺序8


            Console.ReadKey();                     //执行顺序10
        }

    }

    public class People
    {
        public void OutDemo()                       
        {                                       //执行顺序9
            Console.WriteLine($"HaHa");
        }

        public static readonly People Instance = new People();        //执行顺序1


        public static Action Inssstance = () => { Console.WriteLine("11"); };      //执行顺序4

        private People()                       
        {                                      //执行顺序2
            Console.WriteLine(3);               //执行顺序3
        }

        public People(string ss)                  
        {                                     //执行顺序7
          
        }
    }


评论


亲,登录后才可以留言!