public void Ejecutar() { Console.WriteLine("* EJEMPLO 4: Interfaces *"); Console.WriteLine("Solo definiremos comportamiento"); Console.WriteLine("Paso 1: Ver las definiciones"); Transversales.Continuar(); #region PARTE 1 Console.WriteLine("Paso 2: Tenemos las clases definidas, a probar ... "); Transversales.Continuar(); 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()); Transversales.Continuar(); #endregion #region PARTE 2 Console.WriteLine("Paso 3: Un uso adicional de la interfaz"); 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 4 *"); Transversales.Continuar(); }
public void Ejecutar() { Console.WriteLine("* EJEMPLO 1: Creando un objeto *"); Console.WriteLine("Paso 1: Revisar la estructura de la clase 'cuadrado'"); Transversales.Continuar(); Console.WriteLine("Paso 2: Creemos una instancia de la clase, de color rojo y de lado 8"); Transversales.Continuar(); #region PARTE 1 Cuadrado cuadrado1 = new Cuadrado(8, Transversales.Color.Rojo); Console.WriteLine(String.Format("Su permitro es:{0}", cuadrado1.GetPerimetro())); Console.WriteLine(String.Format("Su area es:{0}", cuadrado1.GetArea())); cuadrado1.GetColor(); #endregion Console.WriteLine("\nA la instancia de la clase, la llamamos Objeto"); Transversales.Continuar(); Console.WriteLine("Paso 3: Creemos otra instancia de la clase, de color verde y de lado 1"); Transversales.Continuar(); #region PARTE 2 Cuadrado cuadrado2 = new Cuadrado(1, Transversales.Color.Verde); Console.WriteLine(String.Format("Perimetro cuadrado 2 es:{0}", cuadrado2.GetPerimetro())); Console.WriteLine(String.Format("Area cuadrado 2 es:{0}", cuadrado2.GetArea())); cuadrado2.GetColor(); Console.WriteLine(String.Format("\nPerimetro cuadrado 2 es:{0} vs Perimetro cuadrado 1 que es: {1}" , cuadrado2.GetPerimetro(), cuadrado1.GetPerimetro())); #endregion Console.WriteLine("\nTenemos multiples instancias (objetos), de la misma clase"); Console.WriteLine("\n* FIN EJEMPLO 1 *"); Transversales.Continuar(); }
public void Ejecutar() { Console.WriteLine("* EJEMPLO 3: Clases Abstractas *"); Console.WriteLine("En estricto rigor, 'Figura geometrica' es una representacion, un concepto"); Console.WriteLine("No tiene sentido crear instancias de esta"); Console.WriteLine("Paso 1: Ver como se definen"); Transversales.Continuar(); #region PARTE 1 Console.WriteLine("Paso 2: Tenemos las clases definidas, a probar ... "); 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()); Transversales.Continuar(); #endregion #region PARTE 2 Console.WriteLine("Paso 3: ¿Que pasa con el último ejemplo del polimorfismo?"); 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 3 *"); Transversales.Continuar(); }
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(); }