class Class1 { public static int count = 0; static Class1() { count++; } public Class1() { count++;
答案:1 悬赏:30 手机版
解决时间 2021-02-18 02:38
- 提问者网友:萌卜娃娃
- 2021-02-17 13:35
class Class1 { public static int count = 0; static Class1() { count++; } public Class1() { count++;
最佳答案
- 五星知识达人网友:轻熟杀无赦
- 2021-02-17 13:56
静态构造函数是C#的一个新特性,在编程过程中用处并不广,它的主要目的是用于初始化一些静态的变量。
因为这个构造函数是属于类的,而不属于任何一个实例,所以这个构造函数只会被执行一次,而且是在创建此类的第一个实例或引用任何静态成员之前,由.NET自动调用。
也就是说你在构造第一个实例也就是o1的时候,除了调用构造函数还要执行静态构造函数。也就是静态数据成员count初始值为0. Class1 o1 = new Class1();之后调用static Class1()这个函数,count++变为1,再调用public Class1()这个函数count++变为2,Class1 o2 = new Class1();这句话执行之后,调用public Class1()这个函数count++变为3.不明白可追问。另外百度百科有关于 静态构造函数 的具体介绍。
因为这个构造函数是属于类的,而不属于任何一个实例,所以这个构造函数只会被执行一次,而且是在创建此类的第一个实例或引用任何静态成员之前,由.NET自动调用。
也就是说你在构造第一个实例也就是o1的时候,除了调用构造函数还要执行静态构造函数。也就是静态数据成员count初始值为0. Class1 o1 = new Class1();之后调用static Class1()这个函数,count++变为1,再调用public Class1()这个函数count++变为2,Class1 o2 = new Class1();这句话执行之后,调用public Class1()这个函数count++变为3.不明白可追问。另外百度百科有关于 静态构造函数 的具体介绍。
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯