为什么 Main 方法是私有的?

发布于 2024-09-07 05:33:09 字数 191 浏览 3 评论 0原文

新的控制台项目模板创建一个如下所示的 Main 方法:

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

为什么 Main 方法和 Program 类都不需要是公共的?

New console project template creates a Main method like this:

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

Why is it that neither the Main method nor the Program class need to be public?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

似狗非友 2024-09-14 05:33:09

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

The entry point of a program is marked with the .entrypoint IL directive. It does not matter if the method or the class is public or not, all that matters is this directive.

醉态萌生 2024-09-14 05:33:09

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

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

如果您想要,您可以通过标记public来打开它以供调用,例如,如果您要将控制台应用程序转换为API。

The Main method shouldn't need to be called by anyone.

It is actually marked as the entry point for execution in the EXE itself, and therefore has no outside callers by default.

If you WANT, you can open it up to be called by marking public, e.g. if you are turning a console app into an API.

倾城泪 2024-09-14 05:33:09

是的。您可以将 main() 方法标记为公共、私有或受保护。如果您想通过任何外部程序启动入口点,那么您可能需要将其公开,以便可以访问。如果您知道应用程序没有外部使用,则可以将其标记为私有,那么最好将其设为私有,这样外部应用程序就不会访问它。

public class MainMethod
{
    private  static void Main(string[] args)
    {
        Console.WriteLine("Hello World !!");
    }
}

Yes. You can mark the main() method as public, private or protected. If you want to initiate the entry point by any external program then you might need to make it public so it is accessible. You can mark it as private if you know there is no external usage for the application then it is better to make it private so no external application access it.

public class MainMethod
{
    private  static void Main(string[] args)
    {
        Console.WriteLine("Hello World !!");
    }
}
最美的太阳 2024-09-14 05:33:09

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

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

Public or Private keyword doesn't make a difference in this case, it completely depends on usage and scope of the application. Use below mentioned keywords in different scenarios.

  1. Public - If we want to initiate entry point by any external program, then you might need to make it public so it is accessible.
  2. Private - If we know there is no external usage for the application, then it is better to make it private so no external application access it.
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文