C#基础——静态成员,static关键字

时间:2023-03-09 15:52:30
C#基础——静态成员,static关键字

当声明一个类成员为静态时,意味着无论创建多少个类的对象,只会有一个该静态成员的副本。

关键字static意味着只有一个该成员的实例。静态变量用于定义常量,因为它们的值可以通过直接调用类而不需要创建类的实例来获取。

比如,定义类的成员变量为static的:

 class StaticVar
{
public static int num;
public void count() { num++; }
public int getNum() { return num; }
}

当类创建多个实例的时候,只要调用该类的count()方法,num就会+1。

当然,也可以将类的成员函数声明为static,这样的函数只能访问静态变量。静态函数在对象被创建之前就已经存在:

  class StaticVar
{
public static int num;
public void count() { num++; }
public static int getNum() { return num; }
} class Program
{
static void Main(string[] args)
{
StaticVar s = new StaticVar();
s.count();
s.count();
s.count();
Console.WriteLine(StaticVar.getNum());
Console.ReadKey();
}
}

调用静态的成员函数无须实例化,直接采用类型.成员函数的方式即可。