具有约40个常量的类应声明为静态还是非静态?

时间:2018-07-03 08:09:17

标签: c#

有一个仅容纳约40个常量的类,该类可以声明为“静态”和“非静态”,因为它对我们访问这些常量的方式没有任何影响。

我的问题是更喜欢哪个,为什么?遵循的最佳做法是什么?

public static class IdConstants
{
    public const string a1= "a1" 
    // 40 more constants
}

public class IdConstants
{
    public const string a1= "a1" 
    // 40 more constants
}

1 个答案:

答案 0 :(得分:1)

该类应该为static,不是因为它声明了常量,而是因为它声明了常量,所以它将永远不会被实例化。

如果该类具有非静态成员或将被继承,则不应为static


顺便说一句,形式为

public static class IdConstants
{
    public const string a1 = "a1";
    public const string a2 = "a2"; 
    // ...
    public const string a41 = "a41";
}

可能表明设计存在问题,但我怀疑您只是想通过一个简单的例子来说明您的问题。