Bootstrap

C# 静态和非静态的区别

静态标记 – static

//静态方法
public static void Max(){ }
//非静态方法
public void Max(){ }

//静态类
public static class program{ }
//非静态类
public class program{ }

静态和非静态的区别

  1. 在静态类中既可以有静态成员,也可以有非静态成员。
  2. 非静态成员也称为【实例成员】。
  3. 在调用实例成员/方法(非静态成员)的时候,需要用实例对象.实例成员/方法(非静态成员)
  4. 在调用静态成员/方法的时候,需要用类名.静态成员/方法
  5. 静态方法(函数)中,只能访问静态成员,不能访问实例成员。
  6. 非静态方法(函数)中,既可以访问静态成员,也可以访问实例成员。
  7. 静态类中,只允许有静态成员/方法。

静态类的特征

  1. 静态类本身占内存,静态存储区域,因为静态类不需要实例。
  2. 静态类在整个项目中是资源共享的。
  3. 上述两种特征导致,静态类是作为“工具类”来使用。存放经常调用的方法,或存放需要共享的数据。
  4. 静态类只在项目所有应用程序结束时,才会释放资源,否者一直占据内存空间。
  5. 因为占内存,静态类越少越好

常用的系统静态类: Console.WriteLine(); Console.ReadLine(); Con

;