静态构造函数,静态类

来源:互联网 发布:java返回值怎么理解 编辑:程序博客网 时间:2024/05/22 14:19

 

 静态构造函数用于初始化任何静态数据,或用于执行仅需执行一次的特定操作。在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数。

静态构造函数具有以下特点:

·         静态构造函数既没有访问修饰符,也没有参数。

·         在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数来初始化

·         无法直接调用静态构造函数。

·         在程序中,用户无法控制何时执行静态构造函数。

·         静态构造函数的典型用途是:当类使用日志文件时,将使用这种构造函数向日志文件中写入项。

·         静态构造函数在为非托管代码创建包装类时也很有用,此时该构造函数可以调用 LoadLibrary 方法。

静态类和类成员用于创建无需创建类的实例就能够访问的数据和函数。静态类成员可用于分离独立于任何对象标识的数据和行为:无论对象发生什么更改,这些数据和函数都不会随之变化。当类中没有依赖对象标识的数据或行为时,就可以使用静态类。

类可以声明为static的,以指示它仅包含静态成员。不能使用 new关键字创建静态类的实例。静态类在加载包含该类的程序或命名空间时由 .NET Framework 公共语言运行库 (CLR) 自动加载。

使用静态类来包含不与特定对象关联的方法。例如,创建一组不操作实例数据并且不与代码中的特定对象关联的方法是很常见的要求。您应该使用静态类来包含那些方法。

静态类的主要功能如下:

·         它们仅包含静态成员。

·         它们不能被实例化。

·         它们是密封的。

·         它们不能包含实例构造函数(C# 编程指南)

因此创建静态类与创建仅包含静态成员和私有构造函数的类大致一样。私有构造函数阻止类被实例化。

使用静态类的优点在于,编译器能够执行检查以确保不致偶然地添加实例成员。编译器将保证不会创建此类的实利。

静态类是密封的,因此不可被继承。静态类不能包含构造函数,但仍可声明静态构造函数以分配初始值或设置某个静态状态。

原创粉丝点击