为什么Main方法是私有的?

新的控制台项目模板创build一个像这样的Main方法:

class Program { static void Main(string[] args) { } } 

为什么Main方法和Program类都不需要公开?

程序的入口点用.entrypoint IL指令标记。 这个方法或者类是否是公开的并不重要,重要的是这个指令。

Main方法不需要被任何人调用。

它实际上被标记为EXE本身执行的入口点,因此默认情况下没有外部调用者。

如果你想要的话 ,你可以通过标记public来打开它,例如,如果你正在把一个控制台应用程序变成一个API。

公共或私人关键字在这种情况下没有什么不同,它完全取决于应用程序的使用和范围。 在不同情况下使用下面提到的关键字

1)公开 – 如果我们想通过任何外部程序启动入口点,那么您可能需要将其公开,以便可访问。 2)私有 – 如果我们知道应用程序没有外部使用,那么最好将其设置为私有,这样就不需要外部应用程序访问它。