public void ObtenerNombre(FiguraGeometrica input) { Console.WriteLine("El nombre es:{0}", input.Nombre); }
public void Ejecutar() { Console.WriteLine("* EJEMPLO 2: Herencia y Polimorfismo*"); Console.WriteLine("Paso 1: Analizar las estructuras de las clase CuadradoBase y TrianguloBase"); Transversales.Continuar(); Console.WriteLine("Paso 2: Tenemos las clases definidas, a probar ... "); #region IMPLEMENTACION PARTE 1 CuadradoBase cuadrado1 = new CuadradoBase(2, 2, Transversales.Color.Azul); TrianguloEquilateroBase triangulo1 = new TrianguloEquilateroBase(2.5, 3, Transversales.Color.Rojo); Console.WriteLine("\nCuadrado de: Perimetro es {0}, Area es {1} y color es {2}", cuadrado1.GetPerimetro(), cuadrado1.GetArea(), cuadrado1.GetColor()); Console.WriteLine("\nTriangulo de: Perimetro es {0}, Area es {1} y color es {2}", triangulo1.GetPerimetro(), triangulo1.GetArea(), triangulo1.GetColor()); #endregion #region IMPLEMENTACION PARTE 2 Transversales.Continuar(); Console.WriteLine("Pero, hay cosas 'comunes' y otras no tanto ... vea las definiciones de la parte 2 "); Transversales.Continuar(); Console.WriteLine("Crearemos diferentes instancias de cada clase"); Transversales.Continuar(); FiguraGeometrica f = new FiguraGeometrica(1, 1, Transversales.Color.Amarillo); Cuadrado c1 = new Cuadrado(2, Transversales.Color.Verde); TrianguloEquilatero t1 = new TrianguloEquilatero(3, Transversales.Color.Rojo); Console.WriteLine("Cuadrado de: Perimetro es {0}, Area es {1} y color es {2}", c1.GetPerimetro(), c1.GetArea(), c1.GetColor()); Console.WriteLine("\nTriangulo de: Perimetro es {0}, Area es {1} y color es {2}", t1.GetPerimetro(), t1.GetArea(), t1.GetColor()); Console.WriteLine("\nFigura de: Perimetro es {0}, Area es {1} y color es {2}", f.GetPerimetro(), f.GetArea(), f.GetColor()); Transversales.Continuar(); #endregion #region IMPLEMENTACION POLIMORFISMO 2 Console.WriteLine("--> Diferentes implementaciones del mismo metodo heredado: Polimorfismo dinamico"); Transversales.Continuar(); Console.WriteLine("\nPolimorfismo estatico:"); EjemploPolimorfismoEstatico(); EjemploPolimorfismoEstatico(8); Transversales.Continuar(); Console.WriteLine("-> Nombre para f"); ObtenerNombre(f); Transversales.Continuar(); Console.WriteLine("-> Nombre para c1"); ObtenerNombre(c1); Transversales.Continuar(); Console.WriteLine("-> Nombre para t1"); ObtenerNombre(t1); Transversales.Continuar(); #endregion Console.WriteLine("\n* FIN EJEMPLO 2 *"); Transversales.Continuar(); }