C#静态构造函数总结
今天花了一些时间把静态构造函数的用法总结了一下,希望高手们指点。谢谢!
静态构造函数既没有访问修饰符,也没有参数。
如果没有编写静态构造函数,而这时类中包含带有初始值设定的静态字段,那么编译器会自动生成默认的静态构造函数。
在创建第一个类实例或任何静态成员被引用时,.NET将自动调用静态构造函数来初始化类,也就是说我们无法直接调用静态构造函数,也就无法控制什么时候执行静态构造函数了。
如果类中包含用来开始执行的 Main 方法,则该类的静态构造函数将在调用 Main 方法之前执行。
如果类中的静态字段带有初始化,则静态字段的初始化语句将在静态构造函数之前运行。
一个类只能有一个静态构造函数。
无参数的构造函数可以与静态构造函数共存。尽管参数列表相同,但一个属于类,一个属于实例,所以不会冲突。
最多只运行一次。
静态构造函数不可以被继承。
示例代码如下:
运行的结果是:
static A()
static B()
X=1,Y=2
转载于:https://www.cnblogs.com/tianguook/archive/2013/01/07/2848931.html
C#静态构造函数总结相关推荐
- [转载]静态构造函数
静态构造函数的理解 class Program { static void Main(string[] args) { Cacu ...
- Effective C# 原则13:用静态构造函数初始化类的静态成员(译)
Effective C# 原则13:用静态构造函数初始化类的静态成员 Item 13: Initialize Static Class Members with Static Constructors ...
- 什么是泛型缓存和静态构造函数?
泛型:运行原理 1,泛型没有写死类型,调用的时候指定类型,这个是延时声明 2,延时声明,把参数类型的声明推迟到调用, 3,在即时编译中将泛型代码生成了原生代码,根据不同的类型生成不同的副本,等待程序去 ...
- 由单例模式学到:静态构造函数和静态字段
编译器在编译的时候,会事先分析所需要的静态字段,如果这些静态字段所在的类有静态的构造函数,则忽略静态字段的初始化,否则先进行静态字段的初始化.对类的静态成员初始化的顺序取决于在Main函数中的引用顺序 ...
- WIN7 UAC/结构体的Equals方法/C# 开发wince程序,窗口上总留有一块空白区域/静态构造函数...
1. vs2005在win7下通过IIS7调试时,调用dll失败,但在XP下正常.相信是权限问题,请问应该如何解决?能不能设置dll默认以管理员身分运行? 备注:此DLL已注册成功! 回复引用 全部回 ...
- 子类如果不实例化则不会调用它自身的静态构造函数
using System; using System.Collections.Generic; using System.Linq; using System.Text;namespace Conso ...
- C#构造函数、私有构造函数、静态构造函数与构造函数执行顺序
https://www.cnblogs.com/ArtofDesign/p/3603986.html 默认构造函数,如果没有为类指定任何构造函数,编译器会自动为类创建一个无参构造函数,用以初始化类的字 ...
- c#中的静态构造函数
静态构造函数是C#的一个新特性,其实好像很少用到.不过当我们想初始化一些静态变量的时候就需要用到它了.这个构造函数是属于类的,而不是属于哪里实例的,就是说这个构造函数只会被执行一次.也就是在创建第一个 ...
- c#只读字段和常量的区别,以及静态构造函数的使用 .
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Cons ...
最新文章
- android 编程klinon,android - 您尚未接受以下SDK组件的许可协议
- 【C#串口编程计划】如何避免关闭串口时软件死锁
- RCP中product文件的用法
- [PYTHON] 核心编程笔记(18.多线程编程)
- 面试之作用域链与闭包
- ECharts+BaiduMap+HT for Web网络拓扑图应用
- SDN火爆!未来五年年复合增长率达98%
- 新秀发挥云17号:RHEL改变以太网地址克隆虚拟机后,
- es6继承 vs js原生继承(es5)
- C# 操作IIS方法集合
- Codeforces Round #383 Div 1题解
- GBDT+LR算法入门理解
- 两个音轨合并_怎样将两个音频合并在一起?超详细教程!
- windows2008 FTP下载“当前的安全设置不允许”的解决方法
- java中的switch case语句
- 论文转换成引用的参考文献格式
- html 常用标签、特殊符号
- 基于华视身份证读卡器读取身份证信息的Android demo
- android bp文件_理解Android.bp
- linux平台下苹果打包研究
热门文章
- Spring+ehcache缓存实例
- Codeforces Round #321 (Div. 2) B. Kefa and Company (尺取)
- .NET开发不可错过的25款必备工具
- Python为何如此优秀?斯坦福教授告诉你!
- 诺基亚将携手Nedaa在迪拜设立IoT实验室
- centos7配置haproxy
- 两台服务器实现会话共享
- Debug javascript inside jsp page 调试jsp嵌入的js
- fdopen()和fileno()函数
- JavaScript--在页面的下拉框控件中遍历出日期--先天下能力工场