C# static 静态构造函数

时间:2022-04-23 01:33:00

static   静态构造函数,

1、用于对静态数据的初始化

2、前面不能有参数不能有修饰符,不能被调用

3、当类被加载时,类的静态构造函数自动被调用,最多只执行一次

class Program     {         private static int count = 0;         static Program()         {             Console.WriteLine("我是静态构造函数,我被加载了!");             count++;             Console.WriteLine(count);         }         public Program()         {             Console.WriteLine("我是公共构造函数,我被加载了!");             count++;         }         static void Main(string[] args)         {             Program o1 = new Program();//在此处两个构造函数都调用             Console.WriteLine("----------");             Program o2 = new Program();//只调用第二个构造函数             Console.WriteLine(count);             Console.Read();         }     }          /* 代码运行结果:          我是静态构造函数,我被加载了!     1     我是公共构造函数,我被加载了!     ----------     我是公共构造函数,我被加载了!     3          */


还有就是关于构造函数前面不能有访问修饰符,默认的是public,,如果改为private和protected之类的修饰符的话是不行,因为private的访问权限只能使本类中,这就说明了如果外部要实例化此类的一个对象的话就不行了,其他的同理。