1、静态类
1)仅包含静态成员。
2)不能被实例化。
3)是密封的,不可被继承
1)仅包含静态成员。
2)不能被实例化。
3)是密封的,不可被继承
4)不能包含实例构造函数
5)调用前初始化(构造函数),只初始化一次
2、静态成员
1)如果创建了该类的任何实例,不能使用实例来访问静态成员。
2)静态方法和属性只能访问静态字段和静态事件。
3)静态成员通常用于表示不会随对象状态而变化的数据或计算。
4)静态方法可以被重载但不能被重写,因为它们属于类,不属于类的任何实例,静态成员只被创建一次,所以静态成员只有一份。类加载的时候,所有的静态成员就会被创建在“静态存储区”里面,一旦创建直到程序退出,才会被回收。
5)C# 不支持静态局部变量(在方法范围内声明的变量)。
6)静态字段有两个常见的用法:一是记录已实例化对象的个数,二是存储必须在所有实例之间共享的值。
7)一个类只能有一个静态构造函数,该构造函数不能有访问修饰符,不能带任何参数,不能被直接调用,只能在:
(a) 创建包含静态构造函数的类实例时
(b) 访问包含静态构造函数的静态成员时会先调用静态构造函数,无论创建了多少个类实例,其静态构造函数都只调用了一次。
class Program
{
public static int i