我正在构建一个类来保存一些全局变量。
我只是想要为此目的使用静态类或非静态类会产生什么不同。
示例
public class Modules
{
public static int Modul1{ get { return 1; } }
}
或
public static class Modules
{
public static int Modul1{ get { return 1; } }
}
答案 0 :(得分:1)
不同之处在于您无法从静态类创建实例。如果您不打算将该类用于最佳选项的对象,那么很明显该类不应该被实例化。
编辑: 作为旁注,我认为在大型项目中执行此操作是不好的设计:link
答案 1 :(得分:1)
声明为静态,您至少添加了2个架构限制:
1)没有人可以从该类派生并以任何方式扩展它。
2)内部成员只能是静态成员。
因此,如果你想像配置库一样使用这个类,那么就像使用静态类一样。
答案 2 :(得分:0)
我有一个带有静态属性的静态Settings类,似乎有意义,不需要创建多个实例,单例似乎有点过分。
答案 3 :(得分:0)
在实例类中,您可以混合使用静态和非静态。但在静态类中,每个ting都是静态的。因此,不存在特定于实例的成员。
另外,如果只是出于目的或需要,你是否真的要求整个班级不仅仅是其成员?