时间:: console application - static methods

标签 c# static

为什么在 C# 中,控制台应用程序,在默认的“程序”类中,所有方法都必须是静态的

static void Main(string[] args)

最佳答案

成员函数不必是静态的;但如果它们不是静态的,则需要您实例化一个 Program 对象才能调用成员方法。

使用静态方法:

public class Program
{
    public static void Main()
    {
        System.Console.WriteLine(Program.Foo());
    }

    public static string Foo()
    {
        return "Foo";
    }
}

没有静态方法(换句话说,要求您实例化 Program):

public class Program
{
    public static void Main()
    {
        System.Console.WriteLine(new Program().Foo());
    }

    public string Foo() // notice this is NOT static anymore
    {
        return "Foo";
    }
}

Main 必须是静态的,否则您必须告诉编译器如何实例化 Program 类,这可能是也可能不是微不足道的任务。

关于时间:: console application - static methods,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1685692/

相关文章:

java - 在构造函数中设置静态最终变量

c# - 'Emgu.CV.Util.CvException' 发生在 'Emgu.CV.World.dll' - 尝试预测时

c# - 为什么.Net中Exception类的ToString()方法不使用StringBuilder来构建字符串?

java - 为什么 Oracle Java 提供的答案在寻址枚举集时使用私有(private)静态修饰符?

iphone - 为什么我们使用 cellIdentifier?

java - 为什么使用静态记录器比不使用它花费更多时间

c# - iTextSharp 居中对齐 Document 对象中的对象

c# - 播放文件中的nAudio奇数缓冲区值

c# - 将 DataGridView 中的 SelectionMode 从 RowHeaderSelect 更改为 ColumnHeaderSelect

c# - 为静态类定义全局别名