I have a problem (this is my mistake, I just can not understand what I'm doing wrong), where "ToString" does not call the correct method ...
public class ClassA
{
public override ToString()
{
return "Hello, I'm class A.";
}
}
public class ClassB : ClassA
{
public override ToString()
{
return "Hello, I'm class B.";
}
}
ClassB myClassB = new ClassB();
List<ClassA> myClassAList = new List<ClassA>();
myClassAList.Add((ClassA) myClassB);
ClassA tempClassA = myClassAList[0];
Console.WriteLine(tempClassA.ToString());
I get "ToString" from "ClassB" and not "ClassA", what am I doing wrong?
source
share