在C#中static关键字是什么意思?

不要复制的答案,要自己的见解,长短无所谓,一句话也行。

静态变量,可在全局访问.
1.在static void Main(string[] args)里用到的所有不在函数域里的变量都需要设置成static
2.有的类中将变量(即定义一个“域”)或者方法定义为static类型,那么这个变量字段(或者方法)可以形象的理解为是“类”的(即,该类的所有成员共享内存中为a分配的一块内存空间),而不像其他普通的变量(或者方法)一样是属于“对象(即类的实例)”的,当然这只是形象的说法
例:class A{
static int a=0;
static void Str(){ };
public A(int x){
a=x;
};
}
那么在程序运行的过程中,变量a只被“初始化”一次,即只在创建第一个类A的对象是初始化a,比如创建A的实例b,并赋予a的值为3;此后再创建A的实例,如c并使用如下方式 A c(4);该语句的意思是创建A的实例,并调用构造函数,将4赋予a,则此时对象c中的域a的值为4,而对象b中的域a的值也为4(注意:不再是3),因为“类的静态域(字段)是其所有对象共享的,亦即只有一个,也就是不属于对象,而是类自身的(可以这么理解,其实我也不知道准不准确)”。
至于静态的方法,其实也是类的,使用时直接用“类名.方法名”的形式,而不是像普通的方法那样用“对象名.方法名”的形式....
呵呵,我只能理解到这种程度,希望对你有所帮助!
温馨提示:内容为网友见解,仅供参考
第1个回答  推荐于2018-04-12
表示静态的,修饰变量的时候表示变量是不可改变的,程序运行结束才收回内存空间,修饰类的时候表示可以不用实例化而直接使用的类。本回答被提问者和网友采纳
第2个回答  2015-09-30
表示静态的,修饰变量的时候表示变量是不可改变的,程序运行结束才收回内存空间,修饰类的时候表示可以不用实例化而直接使用的类

有点类似于常量,c++中的 const
第3个回答  2009-07-18
静态。程序开始即分配存储空间。
第4个回答  2009-07-18
就是静态的意思,一张页面在打开的时候系统只给这个变量赋值一次。

比如你申请了一个变量名字交 static int p=0

你在后台给它赋值为p=1

如果它是普通的变量,当你刷新这张页面的时候,p会回到0

但是你把她设置成static以后,你刷新以后。p的值还是等于1