using System;
namespace RickyTest
{
public class Starter
{
public static void Main()
{
ZClass [] zArray={
new ZClass(),
new YClass(),
new XClass(),
new WClass(),
new YClass(),
new ZClass() };
foreach(ZClass obj in zArray)
{
obj.MethodA();
}
}
}
public class ZClass
{
public virtual void MethodA()
{
Console.WriteLine("ZClass.MethodA");
}
}
public class YClass: ZClass
{
public override void MethodA()
{
Console.WriteLine("YClass.MethodA");
}
}
public class XClass: YClass
{
public new virtual void MethodA()
{
Console.WriteLine("XClass.MethodA()");
}
}
public class WClass: XClass
{
public override void MethodA()
{
Console.WriteLine("WClass.MethodA");
}
}
}