【发布时间】:2011-02-20 09:52:42
【问题描述】:
一个非静态类可以同时拥有静态构造函数和默认构造函数。
这两个构造函数有什么区别?我什么时候应该只使用默认构造函数的静态或静态?
【问题讨论】:
标签: .net constructor
一个非静态类可以同时拥有静态构造函数和默认构造函数。
这两个构造函数有什么区别?我什么时候应该只使用默认构造函数的静态或静态?
【问题讨论】:
标签: .net constructor
在您第一次访问类的实例之前,每个 AppDomain 运行一次静态构造函数。您可以使用它来初始化静态变量。
另一方面,每次创建类的新实例时都会运行默认构造函数。在默认构造函数中,您可以初始化实例的非静态字段。
【讨论】:
无论创建了多少该类型的对象,静态构造函数只运行一次。将为该构造函数创建的每个实例运行一个默认构造函数。
【讨论】:
在所有人都离开后破坏派对......
两个答案都是正确的,只是想添加这个链接:Static Constructors (C# Programming Guide)。
引用他们:
静态构造函数用于初始化任何静态数据,或执行只需要执行一次的特定操作。在创建第一个实例或引用任何静态成员之前自动调用它。
它们的属性:
您可以前往以上链接查看演示和示例代码。
【讨论】: