我在继承和压倒我自己,但我遇到了这个愚蠢的问题。 我正在创建3个类,并在第三个类中创建前两个类的对象。但我的问题是我无法访问其中的函数:(例如,Testing_Class中的A()和测试类中的相同函数。
我在这里做错了什么?
public class Testing_Class
{
public virtual string A()
{
string a = "John";
return a;
}
}
public class Testing : Testing_Class
{
public override string A()
{
string a = "John";
return a;
}
Testing_Class t1 = new Testing_Class();
}
public class Test
{
Testing MyTesting = new Testing();
Testing_Class MyTestingClass = new Testing_Class();
MyTesting.A(); //MyTesting is not even showing up in the popup options menu...
}
答案 0 :(得分:6)
这是因为你试图在方法之外调用A()。
public class Test
{
public void Foo()
{
Testing MyTesting = new Testing();
Testing_Class MyTestingClass = new Testing_Class();
MyTesting.A();
}
}
你可以在类级别声明事物,但只需执行一个表达式,它就需要在一个方法中。