77问答网
所有问题
c# 为什么要合理使用静态类
如题所述
举报该问题
推荐答案 2012-06-04
什么是静态类
所谓静态类指的是无需实例化成对象,直接通过静态体例挪用的类。
本质上讲,静态类是面向过程的,因为通常它只是机械的把原本面向过程的代码集合到一起,虽然结果是以类的体质存在,但此时的类更像是一件皇帝的新衣,所以可以说静态类实际上是披着面向对象的皮儿,干着面向过程的事儿。
面向对象的设计原则之一:针对接口编程,而不是针对实现编程。这有什么不同?打个比喻来说:抛开价格因素,你喜欢独立显卡的电脑还是集成显卡的电脑?我想绝大大都人会选择独立显卡。独立显卡可以看做是针对接口编程,而集成显卡就就能够看做是针对实现编程。如此说来针对实现编程的短处就呼之欲出了: 它丧失了转变的可能性,灵活性。
注意的是:某些情况下,利用静态延迟绑定也能够提高静态类的可测试性。
所以,静态类有好的一面,好比说很适合实现一些无状态的工具类,但大部分时候,我的主观意识很明确,多用对象,少用静态类,避免系统过早的固化。不过有些人说,静态类比对象快之类,我没有对比过,所以.....
温馨提示:答案为网友推荐,仅供参考
当前网址:
http://77.wendadaohang.com/zd/W8Ypqq3vv.html
其他回答
第1个回答 2012-06-04
1.不是合理使用静态类,而是合理使用静态属性。用静态类我们并不反对,对于类似api的存在,纯粹静态方法合集的静态类有其方便的地方
2.对与非api方式存在的东西,不建议使用静态类。尤其是和线程,线程池一类玩意挂钩的东西,静态属性大多都非线程安全
3静态类本身具有上下文环境无关的特性,所以他具有“穿越”性,你在任何时间,任何地点都可以调用,这个特性正是api提供所需要的。而一些和上下文环境联系比较紧密的东西,不建议使用静态类
第2个回答 2012-06-07
类的静态成员是属于类的,类是什么?类是生成对象的模版;静态成员属于类而不是属于某一个对象,进一步说静态成员是共享的(所以在VB叫Share),任何这个类的对象都可以对这个静态成员访问。现在假设静态成员可以访问对象中的变量,由于静态成员是在生成任何具体的对象前已经存在的,那么这个静态成员就根本访问不到任何对象的成员,因为这个时候对象根本就不存在
相似回答
C#什么
时候该
使用静态类
呢?
答:
判断这个很简单,就是从内存的优化方面去考虑.因为静态和非静态的不同的地方,就是静态的从程序一启动就会一直占用内存,而非静态的只在使用后(实例化)后才会占用内存.但是每实例化个一个对象时又会另外占用内存. 举个例子,比如说一个数据库的连接字段(STRING).因为要经常使用到它,这时我们可以
用STATIC
...
c#静态类
和静态方法有
什么
作用
答:
2)
静态类
当类的所有成员都是静态的,意味着该类是公共的(可以理解为公共的工具)就需要将类声明为
static类
。3)在.NET里,如果需要对现有的数据类型进行扩展,必须声明在静态类且方法也是静态的(形参类型前
用
this修饰)。
C#
中
什么
情况下
使用静态类
答:
静态类的主要功能如下:1、它们仅包含静态成员
。2、它们不能被实例化。3、它们是密封的。4、它们不能包含实例构造函数(C# 编程指南)。因此创建静态类与创建仅包含静态成员和私有构造函数的类大致一样。私有构造函数阻止类被实例化。使用静态类的优点在于,编译器能够执行检查以确保不致偶然地添加实例...
C#
中
什么
情况下
使用静态类
答:
费事不费事另说,假若你需要在他构造前某个位置来调用它,那还需要修改你构造他的代码的位置。非静态类使用完成后系统会自动销毁释放,所以非静态类相对来说比较安全,而静态类是在程序结束后销毁的,在销毁前一直驻留在内存中,因此出现错误的可能性会大些。建议不要过多的
使用静态类
,适时使用。
C#
面向对象
静态类
和静态成员
答:
这展示了静态成员在多实例环境中的共用特性。总的来说,
C#
中的静态成员和
静态类
是编程中不可或缺的工具,它们帮助我们管理和共享类的全局状态,但需要正确地运用,以避免潜在的复杂性和副作用。记住,静态成员是属于类而非对象的,它们的存在是为了简化编程逻辑,而非为每个对象提供独立的数据或行为。
关于
使用静态类
和静态方法有哪些好处和坏处!
答:
可以
使用
"类名.方法名"的方式,也可以使用"对象名.方法名"的方式。而实例方法只有后面这种方式。也就是说,调用
静态
方法可以无需创建对象。缺陷是:静态方法在访问本类的成员时,只允许访问静态成员(即静态成员变量和静态方法),而不允许访问实例成员变量和实例方法;实例方法则无此限制。
关于
使用静态类
和静态方法有哪些好处和坏处!
答:
不好的地方: 1,对面向对象语言中,可能破坏了面向对象的结构,因为
使用静态类
或者静态方法,就失去了extend的特征了。 2,对于系统架构来说,可能感觉起来不是很
合理
。 3,在高并发的情况中,容易导致数据出错(此项未验证,只是推测。因为是全局的。) 好的地方: 1,感觉使用起来方便一些 ...
大家正在搜
什么是合理使用
合理使用的内容是什么
类方法和静态方法有什么用
静态类与静态方法
合理使用
合理使用的范围
主张合理使用
合理使用的条件有哪些
合理使用的概念
相关问题
C#中什么情况下使用静态类
c#中静态类的优缺点
c#什么时候用静态类啊?
C#中什么情况下使用静态类
c#静态类和静态方法有什么作用
C#中静态类为什么定义函数必须加static
c#中为什么要定义静态变量和静态方法
C#里面大量使用静态变量和静态类对性能是提升还是下降?