如何用父类的父类的虚方法?
public class A
{
public virtual void M(){}
public void N(){}
}
public class B:A
{
public override void M(){ base.M (); }
new public void N(){base.N();}
}
public class C:B
{
public override void M()
{
base.M ();//调用的是B.M()
//如何调用A.M()?
}
new public void N()
{
((A)this).N();
}
}
//不要用这种办法
public class BB:A
{
public new virtual void M(){ base.M();}
new public void N(){base.N();}
}
public class CC:BB
{
public override void M()
{
base.M();
((A)this).M();
}
new public void N(){base.N();}
}
//也不要用这种办法
public class BBB:A
{
public override void M(){ base.M();}
public void AM()
{
base.M();
}
new public void N(){base.N();}
}
public class CCC:BBB
{
public override void M()
{
base.M();
base.AM();
}
new public void N(){base.N();}
}