当我尝试运行以下代码片段时,它正在执行错误的重载方法。我很困惑为什么会这样? [testB.TestMethod(testValue)
方法执行 public double TestMethod(double value)
方法]
public class TestA
{
public int TestMethod(int value)
{
return value;
}
}
public class TestB : TestA
{
public double TestMethod(double value)
{
return value;
}
}
static void Main( string[] args )
{
TestB testB = new TestB();
int testValue = 3;
testB.TestMethod(testValue);
}
你对此有什么想法吗?
有什么方法可以通过 TestB 实例调用 TestA 类方法而不强制转换为 TestA。?
但它不会发生在 JAVA 和 C++ 中