为什么静态类中的方法不是隐式静态的

时间:2016-07-26 09:49:16

标签: c# static

我知道静态类不能有非静态方法。这说得通。但如果是这样,为什么类中的所有方法都不是隐式静态的?

public static class Foo
{
    public void DoStuff(); // Does not compile.
}

在上面的例子中,为什么编译器不会隐式地使方法DoStuff()成为静态的,如果这是唯一的选择?我想这可能是一个可读性的东西,但还有什么呢?

例如,编译器隐式为不同类型(类,枚举,接口,嵌套等...)设置不同的访问修饰符。不能对静态方法做同样的事情吗?

我之所以要问的是,我目前正在编写很多MVC项目的HtmlHelper,其中helper类是静态的,而且我经常遗漏将这些方法标记为静态。

0 个答案:

没有答案