static void Main(string[] args) { //CUANDO SE QUIERE HACER OVERRIDE DE UNA FUNCION NO VIRTUAL //SE TIENE QUE HACER NEW //PERDEMOS POLIMORFISMO //VIRTUAL MANTIENE LO POLIMORFICO Y NEW NO productoImportado biciI = new productoImportado("bici importada", 100.50, 0.5); biciI.CalculaPrecio(); biciI.muestraVemta(); Console.WriteLine("---"); Productocs tele = new Productocs("television", 10500); tele.CalculaPrecio(); tele.muestraVemta(); Console.WriteLine("---"); // NEW DE OTRA CLASE POR TEMAS DE POLIMORFISMO Productocs p3 = new productoImportado("bicicleta", 2200, 0.2); //IMPRIME EL CALCULA PRECIO DE IMPORTADO p3.CalculaPrecio(); //IMPRIME EL MUESTRA DE PRODCUTO COMUN (CLASE BASE) YA QUE SE PIERDE EL POLIMORFISMO EN NEW p3.muestraVemta(); //CON OVERRIDE HUBIERA SIDO IGUAL A PRIMERO Console.ReadKey(); }
static void Main(string[] args) { Productocs bici = new Productocs("bici", 100.50); bici.CalculaPrecio(); bici.muestraVemta(); Console.WriteLine("----"); productoImportado biciI = new productoImportado("bici importada", 100.50, 0.5); biciI.CalculaPrecio(); biciI.muestraVemta(); ProductoDetenido biciM = new ProductoDetenido("bici detenida", 100.50, 0.5, 500); Console.WriteLine("----"); biciM.CalculaPrecio(); biciM.muestraVemta(); Console.ReadKey(); }