C#类里面的static变量,不会在程序启动时就初始化吗

如题所述

会的

如下图,在实例化MainWindow的时候,会先运行静态变量定义语句。

如有疑问,继续追问。

温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2017-12-15
在静态构造函数初始化之前初始化了。如果没有静态构造函数,在使用时初始化。这只是大概的,具体你自己看,参考资料
http://msdn.microsoft.com/zh-cn/library/aa645758(v=vs.71).aspx
http://csharpindepth.com/Articles/General/Beforefieldinit.aspx本回答被提问者和网友采纳
第2个回答  2014-11-05
会延时初始化,在类第一次被用到时,初始化static变量.
第3个回答  2014-11-05
静态变量 在用到的时候就会去初始化的。
第4个回答  2014-11-05
你可以让它在启动时初始化。

C#类里面的static变量,不会在程序启动时就初始化吗
会的 如下图,在实例化MainWindow的时候,会先运行静态变量定义语句。如有疑问,继续追问。

c#中static的意思是什么?
static 用来说明静态变量。1、如果是在函数外面定义的,那么其效果和全局变量类似,即static说明的变量可以在当前c程序文件中使用。2、如果是在函数内部定义的,那么这个变量只初始化一次,即使再次调用这个函数,这个static变量也不会再次被初始化,于是,这个变量的取值就会一直保存着,我们再次调用该函数时...

C#中的静态变量和常量有什么具体的区别?请详细说一下,我看了概念总感觉...
static变量通过类型应用,使用static变量不需要初始化类,而const变量必须在类被初始化以后才能被使用。即:static变量=类型应用 const变量=实例应用

C#中静态方法自动初始化的问题。
C#中一个类除了包含类构建器外,还包含一个静态构建器,这个静态构建器就是用来初始化static变量的地方,举个例子:public class Test{ private static MyForm myFrm;\/\/自定义一个MyForm窗体,自己实现你要的输入功能 \/\/静态构建器 static Test(){ myFrm=new MyForm();\/\/你可以在这里创建你的输入...

C#中static型变量和非static型变量有何不同
用static关键字符标识的程序元素是静态的,不用static标识的程序元素是非静态.两者的区别在于:静态的东西是在类型加载初始时初始化的,并且与类相关.非静态东西一般放在实例的构造函数中初始化,它是与特定类的实例相关的.

c#类中static field在何时被初始化
只要你运行static field=new static 就初始化了。就可以用字段field了。

c#类中的static字段什么时候释放内存?
不过还是推荐你不要再在这里问了,问到了也不是你自己的.自己去看书,总结吧..想研究底层,这里不是你该来的地方..看下大家的问题你也应该知道这里的级别了.思念天灵属误导.类型的静态字段是存放在运行时方法表列表中的..实际名字叫RTTI(运行时类型识别Run-Time Type Identification)发张图就得了......

C#的程序执行顺序
C# 类的初始化顺序 继承类的static数据成员的初始化器,继承类的static构造器 (在类名, 第一次被引用时, 调用, 如果, 没有这个构 造器, 则static数据成员何时被初始化, 是不可预测的)继承类的实例型数据成员的初始化器 在执行继承类的构造器的内容之前;基类的static数据成员 的初始化器 即 static...

c# 中static变量和const变量 都是只能被初始化赋值一次?它们在内存中...
任何变量“初始化”都只有一次。const修饰的是只读变量,在程序全程中其值永远不变。static修饰的变量的值可以无数次改变,但无论在哪里改变,其改变后的值一直保留至下次改变之前。const修饰的变量在内存中存放在无const修饰的同类变量同一区域,static修饰的变量则在专门的另一区域。

static静态类
在C#中,静态关键字的使用与其他编程语言有所不同。在Java中,静态成员位于包的内部类中,而C#中的静态类则可以定义在顶级或嵌套类中。使用静态关键字可以确保成员变量或方法在整个程序执行过程中只初始化一次,节省了资源并提高了性能。静态类中的变量不需要实例化,就能被访问和使用。静态关键字在C++中...

相似回答