当前位置:编程学习 > C#/ASP.NET >>

请问C#中static为什么不能实例化?

答案:
C#中static可以用来修饰类以及类的一些成员(比如函数或者是属性等),凡是带有static的自动在这个类被调用到的时候自动实例化,且在内存中产生一个实例。所以不能实例化(如果可以,那么你可以无限制创建实例了)
c#中只要用了static 关键字就代表已经实例化了.一般不推荐使用static 因为性能很差,如果是好几个类里面同时需要用到同一个属性或者成员很多次的话,那么就可以考虑使用static   但是调用的时候不需要new
使用 static 修饰符声明属于类型本身而不是属于特定对象的静态成员.
它不属于特定对象。所以不能被实例化。
举个例子。人是一个类。人有脑子。这是一个用static修饰的属性。
他是针对所有的人类,是人的共同特征。而不是某个特点对象所特有的(比如张三有脑子,李四没脑子)
只要是个人,他都有脑子(只是有的人比较脑残。嘿嘿。)。
既然是人类共有的。那么他就不能被实例化。
再举一个能被实例化的例子。还是人这个类。人的身高,这就是一个非static的属性。
因为每个人的身高是不同的。比如我身材魁梧,达到了1.55米。这个1.55米是描述我的身高,是跟我这个特定的对
象有联系的。姚明哥2.26米,这是姚哥的数据。不管是155还是2.26,这都和特定的对象有联系,而不是人类所共有的特征。
所以非static的可以被实例化,而static不能被实例化。

static是一个静态的修饰符,在你调用之前他就已经实例化好了,所以不可以再次实例化,内存中已经存在该实例化的对象了,

上一个:关于C# 获取本机IP的问题
下一个:c#获取颜色框中颜色名称

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,