为什么要使用私有静态类?

时间:2012-10-23 09:34:24

标签: c# .net

  

可能重复:
  Advantages to Using Private Static Methods

在我正在进行的项目中,我找到了一个私有静态类定义。它是从Page派生的基类的一部分。该类包含一些公共静态方法,这些方法在一些基类方法中使用。

由于这段代码的原始开发人员已经不在了,我想知道它的好处是什么。这些方法只返回枚举值。

示例:

public class BasePage : Page
{
   protected override OnInit(EventArgs e)
   {
     ...
   }

   private static class SomeClass
   {
      public static myenumtype GetCategory(int id)
      {
           switch(id)
           {
                case 1: return myenumtype.one;
                case 2: return myenumtype.two;
                default: return myenumtype.zero;
           }
      }
   }
}

3 个答案:

答案 0 :(得分:2)

如果您的意思是嵌套类,则可能只是“命名”方法。这种方式可以将具有相关功能的方法“分组”在一起,而不是在父类中使用静态辅助方法加载Intellisense。

答案 1 :(得分:1)

这可能是为了封装。

拥有一个私有静态类听起来像一个帮助类 - 它会使using类(你正在讨论的基类)中的代码更加简洁和有意义,并在私有类中带来一些偶然的复杂性。

答案 2 :(得分:1)

大多数使用private static class方法的public static是Extensions-Class,它提供您在代码中使用的功能,而不会使此功能成为Page的成员。

您不希望从外部程序集访问此功能。

阅读本文以获取更多信息: