Shr*_*rma 9 c# static static-methods static-members
我正在开发C#和asp.net Web应用程序.
我有一个叫做实用程序的通用类,我在这个公共实用程序类中有很多公共和静态变量.
由于这个数字逐渐增加,我想知道将实用程序方法和变量存储为公共静态是一种好的做法.
我的代码示例
public class utilities
{
public static string utilVariable1 = "Myvalue";
public static string utilVariable2 = "Myvalue";
public static string utilVariable3 = "Myvalue";
:
public static string utilVariableN = "Myvalue";
public static string UtilMethod1()
{
//do something
}
public static string UtilMethod2()
{
//do something
}
public static string UtilMethodN()
{
//do something
}
}
Run Code Online (Sandbox Code Playgroud)
Dan*_*l B 12
static类没有任何内在错误,尽管它们通常不应该有状态(字段).您对public static字段的使用表明情况并非如此,因此您似乎正在使用static稍微滥用关键字.如果你的类需要有状态,那么它应该是一个普通的非静态类,你应该创建它的实例.否则,类上可见的唯一公共字段应该是const(考虑Math类,使用常量,例如Math.PI- 很好地使用static方法和字段).
另一个考虑因素是凝聚力.方法通常存在于一个类中,因为它们以某种方式密切相关.同样,这个Math班级就是一个很好的例子; 那里的一切都与数学有关.在某些时候,您可能希望将全局实用程序类拆分为多个更小,更集中的实用程序类.有关凝聚力的一些例子,请参阅维基百科,听起来你的用法属于"巧合的凝聚力(最差)".
| 归档时间: |
|
| 查看次数: |
10221 次 |
| 最近记录: |