直接赋值的结果就是它们会被放到静态构造函数中执行.
以后会遇到的话,和一般的构造函数类似的呀,赋值只是构造函数的一个功能。有时候,你需要在静态构造函数中写一些逻辑,或是执比一些代码,比如工厂模式中很多的,要读取配置文件,然后把根据配置的文件初使化一些常用的对象,比如单例模式中的唯一对象,或者spring中的session什么的。反正一句话是,有些逻辑也要放在构造函数中,静态的也是。
昨天后来我也想到还会有逻辑了,要是当时有悬赏的话肯定会再分豆的,抱歉啊
楼上说的很详细了,也学习了,我也来补充几点:
1.静态构造函数是不可继承的,而且不能被直接调用。
2.如果没有编写静态构造函数,而这时类中包含带有初始值设定的静态字段,那么编译器会自动生成默认的静态构造函数。
3.静态构造函数执行的确切时间和顺序是不确定的:
3.1一个类的静态构造函数在这个类的任何实例被创建前执行。
3.2一个类的静态构造函数在类的任何静态成员被引用前执行。
3.3一个类的静态构造函数在它的所有派生类的静态构造函数执行之后执行。
3.4一个类的静态构造函数从不会被执行一次以上
4.如果类中包含用来开始执行的Main方法,则该类的静态构造函数将在调用Main方法之前执行。