using System;
public class DiferenciaNewOverride
{
public class ClaseBase
{
public virtual void MetodoPrueba()
{
Console.WriteLine ("Clase.MetodoPrueba");
}
}
public class Overrider : ClaseBase
{
public override void MetodoPrueba()
{
Console.WriteLine ("Overrider.MetodoPrueba");
}
}
public class Hider : ClaseBase
{
public new void MetodoPrueba()
{
Console.WriteLine ("Hider.MetodoPrueba");
}
}
public static void Main ()
{
Overrider over = new Overrider();
ClaseBase b1 = over;
over.MetodoPrueba(); // Overrider.MetodoPrueba
b1.MetodoPrueba(); // Overrider.MetodoPrueba
Console.WriteLine ();
Hider h = new Hider();
ClaseBase b2 = h;
h.MetodoPrueba(); // Hider.MetodoPrueba
b2.MetodoPrueba(); // ClaseBase.MetodoPrueba
}
}
dXNpbmcgU3lzdGVtOwogCnB1YmxpYyBjbGFzcyBEaWZlcmVuY2lhTmV3T3ZlcnJpZGUKewogICAgcHVibGljIGNsYXNzIENsYXNlQmFzZQogICAgewogICAgICAgIHB1YmxpYyB2aXJ0dWFsIHZvaWQgTWV0b2RvUHJ1ZWJhKCkKICAgICAgICB7CiAgICAgICAgICAgIENvbnNvbGUuV3JpdGVMaW5lICgiQ2xhc2UuTWV0b2RvUHJ1ZWJhIik7CiAgICAgICAgfQogICAgfQogICAgCiAgICBwdWJsaWMgY2xhc3MgT3ZlcnJpZGVyIDogQ2xhc2VCYXNlCiAgICB7CiAgICAgICAgcHVibGljIG92ZXJyaWRlIHZvaWQgTWV0b2RvUHJ1ZWJhKCkKICAgICAgICB7CiAgICAgICAgICAgIENvbnNvbGUuV3JpdGVMaW5lICgiT3ZlcnJpZGVyLk1ldG9kb1BydWViYSIpOwogICAgICAgIH0KICAgIH0KICAgIAogICAgcHVibGljIGNsYXNzIEhpZGVyIDogQ2xhc2VCYXNlCiAgICB7CiAgICAgICAgcHVibGljIG5ldyB2b2lkIE1ldG9kb1BydWViYSgpCiAgICAgICAgewogICAgICAgICAgICBDb25zb2xlLldyaXRlTGluZSAoIkhpZGVyLk1ldG9kb1BydWViYSIpOwogICAgICAgIH0KICAgIH0KICAgIAogICAgcHVibGljIHN0YXRpYyB2b2lkIE1haW4gKCkKICAgIHsKICAgICAgICBPdmVycmlkZXIgb3ZlciA9IG5ldyBPdmVycmlkZXIoKTsKICAgICAgICBDbGFzZUJhc2UgYjEgPSBvdmVyOwogICAgICAgIG92ZXIuTWV0b2RvUHJ1ZWJhKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyBPdmVycmlkZXIuTWV0b2RvUHJ1ZWJhCiAgICAgICAgYjEuTWV0b2RvUHJ1ZWJhKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIE92ZXJyaWRlci5NZXRvZG9QcnVlYmEKICAgICAgICAKICAgICAgICBDb25zb2xlLldyaXRlTGluZSAoKTsKICAgICAgICAKICAgICAgICBIaWRlciBoID0gbmV3IEhpZGVyKCk7CiAgICAgICAgQ2xhc2VCYXNlIGIyID0gaDsKICAgICAgICBoLk1ldG9kb1BydWViYSgpOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gSGlkZXIuTWV0b2RvUHJ1ZWJhCiAgICAgICAgYjIuTWV0b2RvUHJ1ZWJhKCk7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC8vIENsYXNlQmFzZS5NZXRvZG9QcnVlYmEKICAgIH0KfQ==