大多数初级程序员或学生都认为在C#控制台或应用程序中只能有一个Main()方法。但是事实上是可以有多个Main()方法的。
在C#控制台或应用程序中,在多个类中,且每个类里最多只能存在一个Main()方法的情况是允许存在的。
using System;namespace ConsoleTest{ class Demo { public static void Main() { Console.WriteLine("我是Demo类的Main方法!"); } } class DemoClass { public static void Main() { Console.WriteLine("我是DemoClass类的Main方法!"); Demo.Main(); Console.ReadLine(); } }}
如上代码所示。Demo类和DemoClass类里各有一个Main()方法。然后我们编译一下。
如图所示,提示错误,未能编译成功。主要原因是如上方式编写的程序有两个Main()入口。因此,提示错误。
但是,我们通过VS中的程序设置,是可以编译成功的。打开项目属性,如下图所示。
我们将项目属性中的 “启动对象” 原来的默认设置改为 ConsoleTest.DemoClass,然后保存,再次编译即可成功。如下图是运行结果。