gpt4 book ai didi

c# - 为什么我不能在另一个类中调用公共(public)方法?

转载 作者:可可西里 更新时间:2023-11-01 08:13:57 25 4
gpt4 key购买 nike

我让这两个类进行交互,我正在尝试从第一个类中调用四个不同的类以供第二类使用。

这些方法是公开的,它们确实返回值,但由于某种原因没有建立连接。我尝试时遇到的错误是:“非静态字段、方法或属性‘GradeBook.[我想调用的方法]’需要对象引用”


我已经初始化了所有内容。我不想将方法创建为静态的。我再次阅读了我的作业的细节,我什至不应该这样做,但我似乎无法让它发挥作用,无论如何我都说了。

myGradeBook.[方法]GraceBook.[方法]

这一切似乎都会产生错误。

当前错误:

The best overloaded method match or 'System.Console.WriteLine(string, object)' has some invalid arguments.

Arugment '2': cannot convert from 'method group' to 'object'

我什至不明白那些是什么意思......

编辑:由于 Visual Studio 的 Step Into 功能,我刚刚解决了这个问题。我不知道为什么我花了这么长时间才使用它。

最佳答案

您正在尝试调用类的实例方法。要在类上调用实例方法,您必须创建一个实例来调用该方法。如果要在非实例上调用该方法,请添加 static 关键字。例如

class Example {
public static string NonInstanceMethod() {
return "static";
}
public string InstanceMethod() {
return "non-static";
}
}

static void SomeMethod() {
Console.WriteLine(Example.NonInstanceMethod());
Console.WriteLine(Example.InstanceMethod()); // Does not compile
Example v1 = new Example();
Console.WriteLine(v1.InstanceMethod());
}

关于c# - 为什么我不能在另一个类中调用公共(public)方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/330138/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com