使用所使用的类的名称调用静态方法Main-C#program

使用所使用的类的名称调用静态方法Main-C#program,c#,.net,main,C#,.net,Main,我读过至少一个类应该包含Main方法,因为执行的入口点是Main()。让我们看看下面的代码 using System; namespace consoleApplication { class sample { public static void Main() { Console.WriteLine("Demo program"); Console.ReadKey(); }

我读过至少一个类应该包含Main方法,因为执行的入口点是Main()。让我们看看下面的代码

using System;
namespace consoleApplication
{
    class sample
    {
        public static void Main()
        {
            Console.WriteLine("Demo program");
            Console.ReadKey();
        }
    }
}
我们知道,可以使用带有类名的点运算符调用类中的静态方法。那么我们可以将Main()称为

就像我们所说的

Console.WriteLine();

请告诉我它在语法上是否正确,即使我们没有使用相同的方法。

默认情况下,类和
Main()
方法被创建为私有成员。如果你真的想,你可以让他们成为公众成员,然后从另一个项目中给他们打电话

namespace ConsoleApplication1
{
    public class sample
    {
        public static void Main()
        {
            Console.WriteLine("My Output...");
            Console.ReadKey();
        }
    }
}

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            sample.Main();
        }
    }
}
输出:“我的输出…”

然而,我不知道为什么有必要这样做。这就是创建库的目的。我将创建一个类库,并在其中创建静态类/方法

您的
Main()
方法只是控制台应用程序的入口点。每个应用程序都有一个入口点。我想不出一个用例,您可以创建几个应用程序项目,然后从其他项目调用
Main()
方法。相反,我会创建一个新项目,它将用作库,而不是应用程序。这就是类库的用途


最后一个问题的答案是,这个语法正确吗?对我再次强调,这不是好的做法。从“Main必须是静态的,不应该是公共的。”仅仅因为可以这样做,并不意味着它应该是。

默认情况下,类和
Main()
方法被创建为私有成员。如果你真的想,你可以让他们成为公众成员,然后从另一个项目中给他们打电话

namespace ConsoleApplication1
{
    public class sample
    {
        public static void Main()
        {
            Console.WriteLine("My Output...");
            Console.ReadKey();
        }
    }
}

namespace ConsoleApplication2
{
    class Program
    {
        static void Main(string[] args)
        {
            sample.Main();
        }
    }
}
输出:“我的输出…”

然而,我不知道为什么有必要这样做。这就是创建库的目的。我将创建一个类库,并在其中创建静态类/方法

您的
Main()
方法只是控制台应用程序的入口点。每个应用程序都有一个入口点。我想不出一个用例,您可以创建几个应用程序项目,然后从其他项目调用
Main()
方法。相反,我会创建一个新项目,它将用作库,而不是应用程序。这就是类库的用途



最后一个问题的答案是,这个语法正确吗?对我再次强调,这不是好的做法。从“Main必须是静态的,不应该是公共的。”仅仅因为它可以做到,并不意味着它应该做到。

你是在问为什么不必在代码中调用
Main
?如果是这样,那是因为操作系统是为你做的。为什么不这样做?你会建议如何调用代码,然后调用
sample.Main
?你必须在项目设置-引用中添加一个程序集,然后将Main()用作consoleApplication.sample.Main();如果要编写
sample.Main()
,则需要使用consoleApplication编写
在源文件的开头,您是否在问为什么不必在代码中调用
Main
?如果是这样,那是因为操作系统是为你做的。为什么不这样做?你会建议如何调用代码,然后调用
sample.Main
?你必须在项目设置-引用中添加一个程序集,然后将Main()用作consoleApplication.sample.Main();如果要编写
sample.Main()
,则需要使用consoleApplication编写
在源代码的头部-file@asawyer不是我在VisualStudio2010中创建的两个。。。静态void Main(字符串[]args)我收回我的语句。我一定是很久以前出于某种原因编辑了它,然后忘了。对不起!:)不知道为什么我会被否决。。这绝对有效,我没说这是个好主意。但是你可以做到。。。请给出否决投票的理由。伙计们,我只是想知道是否可以这样做,但这并不意味着我正试图用它实现某些功能。@asawyer不适合我在Visual Studio 2010中刚刚创建的两个。。。静态void Main(字符串[]args)我收回我的语句。我一定是很久以前出于某种原因编辑了它,然后忘了。对不起!:)不知道为什么我会被否决。。这绝对有效,我没说这是个好主意。但是你可以做到。。。请给出否决投票的理由。伙计们,我只是想知道这是否可以实现,但这并不意味着我正试图用它实现某些功能。