我是C#的新手。我试图检查在C#中如何实现多态,并且我很困惑,哪种方法是实现多态。我使用下面给出的代码,输出是A的方法。如何在C#中实现多态#
class A
{
public void Display()
{
Console.WriteLine("A's Method");
}
}
class B : A
{
public void Display()
{
Console.WriteLine("B's Method");
}
}
class Polymorphism
{
public static void Main(string[] args)
{
A a = new B();
a.Display();
Console.ReadKey();
}
}
但是,当我定义显示()方法下面然后B的输出方法被称为给出。
class A
{
public virtual void Display()
{
Console.WriteLine("A's Method");
}
}
class B : A
{
public override void Display()
{
Console.WriteLine("B's Method");
}
}
因此,通过什么样的方式,我实现多态,什么是两者的方式,哪一个应该是最好的覆盖之间的差异。任何帮助将是可观的。
可能重复http://stackoverflow.com/questions/3838553/overriding-vs-method-hiding) – 2014-10-09 05:12:47