如何获取以下程序来打印sumOfNumbers方法的结果?我无法在main方法中调用此方法,我不知道为什么.谁能解释我做错了什么?
class Program
{
static void Main(string[] args)
{
//Console.WriteLine();
//Console.ReadLine();
}
private int sumOfNumbers (int x, int y)
{
return x + y;
}
}
Run Code Online (Sandbox Code Playgroud)
您的方法签名错误.它应该是private static int sumOfNumbers(int x, int y).
编辑:我被要求对此进行更多解释.静态方法(如Main示例中所示)不属于对象的特定实例.它属于它的类,Program.没有static修饰符的方法属于该类的特定实例.这种差异意味着"无对象"静态方法(Main)只能直接使用静态方法,或者通过实例化对象然后在对象上调用该方法.
第二种方法如下:
var foo = new Program();
Console.WriteLine(foo.sumOfNumbers(3,2))
Run Code Online (Sandbox Code Playgroud)
我会继续建议将方法修改为静态.我从你的Main方法推断出你正在编写一个控制台应用程序,并且(根据我的经验)实例这样的类是非常规的.