【发布时间】:2020-04-14 15:51:06
【问题描述】:
在.Net 中,静态类是在内部创建一个对象还是根本不创建任何对象。根据微软文档
与所有类类型一样,当加载引用该类的程序时,.NET Framework 公共语言运行时 (CLR) 会加载静态类的类型信息。程序无法准确指定加载类的时间。但是,它保证在程序中第一次引用该类之前被加载并初始化其字段并调用其静态构造函数。静态构造函数只被调用一次,静态类在程序所在的应用程序域的整个生命周期内都保留在内存中。
我们可以说一个对象是在这里隐式创建的吗?我确信仅仅编写静态类不会为它创建内存,直到静态类或其任何成员在代码中的某个位置被引用。如果我错了,请纠正我。
【问题讨论】:
-
您好!你的问题能回答这个问题吗?stackoverflow.com/questions/6721832/…
-
Venkata 你的意思是“这能回答你的问题吗”:)
-
像所有其他类一样,静态类需要调用构造函数(new myClass)。只是一个静态类,该类只有一个实例,而不是多个实例。
-
为什么你会认为创建了一个对象?我看不出你是如何从报价中得到的。