jueves, 8 de noviembre de 2012

Herencia en C#

Bueno, este ejercicio es resultado de una guía que nos entrego el profe el clase.
Lo propuesto es:


1.      Desarrolle un programa con las siguientes características:

-      Crear una clase Persona (Clase padre)
-      Propiedades
Cédula
Nombre
Dirección
Teléfono

-      Métodos

ImprimirDatos(parámetros) (Debe imprimir el nombre y la dirección de la persona)

-      Crear una clase Empleado (Clase Hija)
-      Propiedades
NHT (número de horas trabajadas).
VHT (valor de hora trabajada).


-      Métodos

Salario (parámetros) (Debe imprimir salario a pagar al trabajador de acuerdo al NHT y VHT, estos dos son parámetros del método)


Crear un programa que utilizando la herencia con las dos clases antes mencionada, permita hallar el valor del salario a pagar a un empleado. (el VHT y NHT se deben capturar por teclado). Se debe instanciar la clase empleado para crear el programa y llegar a la solución.

El proyecto lo llame: Herencia
La clase padre es : Persona
La clase hija es : Empleado
Por ultimo, esta el código en el main.

Código de Clase Padre Persona

 class Persona
    {
        private string cedula;

        public string Cedula
        {
            get { return cedula; }
            set { cedula = value; }
        }

        private string nombre;

        public string Nombre
        {
            get { return nombre; }
            set { nombre = value; }
        }

        private string direccion;

        public string Direccion
        {
            get { return direccion; }
            set { direccion = value; }
        }

        private string telefono;

        public string Telefono
        {
            get { return telefono; }
            set { telefono = value; }
        }

        public void PedirDatos(string nom, string dir, string ced, string tel)
        {
            this.Nombre = nom;
            this.Direccion = dir;
            this.Cedula = ced;
            this.Telefono = tel;
        }

Código de la clase Empleado

 class Empleado:Persona // aquí esta la clave de la herencia, mire bien este código en este punto, aquí la clase Empleado hereda de la clase persona todos sus atributos, métodos y constructores, también los parámetros.

    {
        private int NumeroHorasTrabajadas;
        int sal;

        public int NHT
        {
            get { return NumeroHorasTrabajadas; }
            set { NumeroHorasTrabajadas = value; }
        }

        private int ValorHoraTrabajada;

        public int VHT
        {
            get { return ValorHoraTrabajada; }
            set { ValorHoraTrabajada = value; }
        }

        public void ImprimirSalario(int nht, int vht)
        {
            this.NHT = nht;
            this.VHT = vht;
            sal = nht * vht;
            Console.Write("El total a pagar es: " + sal);
            Console.ReadLine();
        }


    }



Este es el código en el main

 Empleado A = new Empleado();

            int Esc;
            string Decision;

            A.PedirDatos(A.Nombre, A.Direccion, A.Cedula, A.Telefono);

            Console.Write("Digite el Nombre del empleado: ");
            A.Nombre = Console.ReadLine();

            Console.Write("Digite la Direccion del empleado: ");
            A.Direccion = Console.ReadLine();

            Console.Write("Digite la Cedula del empleado: ");
            A.Cedula = Console.ReadLine();

            Console.Write("Digite el Telefono del empleado: ");
            A.Telefono = Console.ReadLine();

            Console.Write("Digite el Valor de la Hora Trabajada: ");
            A.VHT = int.Parse(Console.ReadLine());

            Console.Write("Digite el Numero de Horas Trabajadas: ");
            A.NHT = int.Parse(Console.ReadLine());           


            do
            {
                Console.WriteLine();
                Console.WriteLine("Menù del Programa:");
                Console.WriteLine();
                Console.WriteLine("Para conocer los datos del Empleado digite 1... ");
                Console.WriteLine("Para conocer el sueldo del Empelado digite 2... ");
                Esc = int.Parse(Console.ReadLine());
                switch (Esc)
                {
                    case 1:
                        Console.Write(A.Nombre + "  " + A.Direccion + "  " + A.Cedula + "  " + A.Telefono);
                        Console.ReadLine();
                        break;
                    case 2:
                        A.ImprimirSalario(A.NHT, A.VHT);
                        break;
                }
                Console.Write("Continuar S/N");
                Decision = Console.ReadLine();
            }
            while ((Decision == "s") || (Decision == "S"));        

Espero que pueda analizarlo y mirar bien como se trabaja este tema de la herencia...

Pendientes próximas entregas...




No hay comentarios:

Publicar un comentario

Gracias por visitar mi blog. Si quieres recibir mis entradas actualizadas escribeme a wilmerpsilva@hotmail.com. !!! Recuerda comentar es agradecer !!!