fork download
  1. using System;
  2.  
  3. public class DiferenciaNewOverride
  4. {
  5. public class ClaseBase
  6. {
  7. public virtual void MetodoPrueba()
  8. {
  9. Console.WriteLine ("Clase.MetodoPrueba");
  10. }
  11. }
  12.  
  13. public class Overrider : ClaseBase
  14. {
  15. public override void MetodoPrueba()
  16. {
  17. Console.WriteLine ("Overrider.MetodoPrueba");
  18. }
  19. }
  20.  
  21. public class Hider : ClaseBase
  22. {
  23. public new void MetodoPrueba()
  24. {
  25. Console.WriteLine ("Hider.MetodoPrueba");
  26. }
  27. }
  28.  
  29. public static void Main ()
  30. {
  31. Overrider over = new Overrider();
  32. ClaseBase b1 = over;
  33. over.MetodoPrueba(); // Overrider.MetodoPrueba
  34. b1.MetodoPrueba(); // Overrider.MetodoPrueba
  35.  
  36. Console.WriteLine ();
  37.  
  38. Hider h = new Hider();
  39. ClaseBase b2 = h;
  40. h.MetodoPrueba(); // Hider.MetodoPrueba
  41. b2.MetodoPrueba(); // ClaseBase.MetodoPrueba
  42. }
  43. }
Success #stdin #stdout 0.03s 33864KB
stdin
Standard input is empty
stdout
Overrider.MetodoPrueba
Overrider.MetodoPrueba

Hider.MetodoPrueba
Clase.MetodoPrueba