コード例 #1
0
        static void Main(string[] args)
        {
            Rectangulo myRectangulo = new Rectangulo();

            myRectangulo.CalcularArea(2, 3);

            Cuadrado myCruadrado = new Cuadrado();

            myCruadrado.CalcularArea(2);

            Console.WriteLine("El perimettro es:" + myCruadrado.CalcularPerimetro(2, 3));

            Console.WriteLine("Presione enter para salir");
            Console.ReadKey();
        }
コード例 #2
0
        static void Main(string[] args)
        {
            //Upcasting
            //Creaciones de instancias con su relación
            IFigura f1 = new Circulo {
                Radio = 5
            };
            IFigura f2 = new Triangulo {
                Base = 10, Altura = 8
            };
            IFigura f3 = new Rectangulo {
                Base = 4, Altura = 3
            };
            IFigura f4 = new Circulo {
                Radio = 9
            };

            //Crea un array de las clases
            IFigura[] figuras = new IFigura[] { f1, f2, f3, f4 };

            //Recorre todo el array
            foreach (var fig in figuras)
            {
                Console.WriteLine(fig.CalcularArea());
            }
            Console.WriteLine("");


            //Downcasting, esto permite usar los metodos especificos de cada clase
            Circulo c = f1 as Circulo;

            Console.Write("Datos del circulo: ");
            c.DatosCirculo();
            Console.WriteLine("");

            Triangulo t = f2 as Triangulo;

            Console.Write("Datos del triangulo: ");
            t.DatosTriangulo();
            Console.WriteLine("");

            Rectangulo r = f3 as Rectangulo;

            Console.Write("Datos del Rectangulo: ");
            r.DatosRectangulo();
            Console.WriteLine("");
        }
コード例 #3
0
        static void Main(string[] args)
        {
            Circulo c1 = new Circulo();

            c1.Radio = 5;
            c1.DatosCirculo();

            // Upcasting
            IFigura f1 = new Circulo {
                Radio = 5
            };

            f1.CalcularArea();
            IFigura f2 = new Triangulo {
                Base = 10, Altura = 9
            };
            IFigura f3 = new Rectangulo {
                Base = 4, Altura = 3
            };

            IFigura[] figuras = new IFigura[] { f1, f2, f3 };

            foreach (var figura in figuras)
            {
                Console.WriteLine(figura.CalcularArea());
            }

            // Downcasting
            Circulo c = f1 as Circulo;

            c.Radio = 5;
            Console.WriteLine("Datos del circulo");
            c.DatosCirculo();

            Console.ReadKey();
        }