C#静态构造函数
2016-03-29 15:02
369 查看
静态构造函数是C#的一个新特性,静态构造函数用于初始化任何
静态 数据,或用于执行仅需执行一次的特定操作。 在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数。
1、静态构造函数既没有访问修饰符,也没有参数。
--因为是.NET调用的,所以像public和private等修饰符就没有意义了。
2、在创建第一个类实例或任何静态成员被引用时,.NET将自动调用静态构造函数来初始化类。
--也就是说我们无法直接调用静态构造函数,也不可能知道静态构造函数何时会被调用。
3、一个类只能有一个静态构造函数。
4、无参数的构造函数可以与静态构造函数共存。
--尽管参数列表相同,但一个属于类,一个属于实例,所以不会冲突。
5、最多只运行一次。
6、静态构造函数不可以被继承。
7、如果没有写静态构造函数,而类中包含带有初始值设定的静态成员,那么编译器会自动生成默认的静态构造函数。
8、如果静态构造函数引发异常,运行时将不会再次调用该构造函数,并且在程序运行所在的应用程序域的生存期内,类型将保持未初始化。
静态 数据,或用于执行仅需执行一次的特定操作。 在创建第一个实例或引用任何静态成员之前,将自动调用静态构造函数。
注意事项
1、静态构造函数既没有访问修饰符,也没有参数。--因为是.NET调用的,所以像public和private等修饰符就没有意义了。
2、在创建第一个类实例或任何静态成员被引用时,.NET将自动调用静态构造函数来初始化类。
--也就是说我们无法直接调用静态构造函数,也不可能知道静态构造函数何时会被调用。
3、一个类只能有一个静态构造函数。
4、无参数的构造函数可以与静态构造函数共存。
--尽管参数列表相同,但一个属于类,一个属于实例,所以不会冲突。
5、最多只运行一次。
6、静态构造函数不可以被继承。
7、如果没有写静态构造函数,而类中包含带有初始值设定的静态成员,那么编译器会自动生成默认的静态构造函数。
8、如果静态构造函数引发异常,运行时将不会再次调用该构造函数,并且在程序运行所在的应用程序域的生存期内,类型将保持未初始化。
相关文章推荐
- C#的Session偶尔查询不到的问题
- C# 4.5以下超时
- 【三层登录之C#版】
- C#密码加密解密类
- c# int Int32 Int64 的区别
- 存储过程详解 C#
- C# split与正则表达式
- C# DateTime和时间戳
- C# 图片截取、放大、缩小与保存
- C# backgroundwork的使用方法
- C# 特性demo
- C# Console的属性、普通数组的获取长度、反转与排序
- C# 委托应用总结(委托,Delegate,Action,Func,predicate)
- C#多线程编程时遇到跨线程访问异常的处理方法
- C#中如何获取文件图标
- C#中的invoke和begininvoke
- C# .net 抓取网页内容
- C#知识点总结
- C#知识点总结
- Singleton Pattern in C# 5种实现