Introducción a la Programación Orientada a Objetos. Polimorfismo
Enviado por Figue1983 • 23 de Noviembre de 2016 • Práctica o problema • 1.049 Palabras (5 Páginas) • 293 Visitas
Universidad Politécnica de Baja California[pic 1]
Carrera:
Ingeniería en Tecnologías de la Información
Alumno:
Victor Figueroa Raya # 150306
Maestro: Ing. Jesús Alejandro Mora Martínez
Grupo: 4AV
Materia:
Introducción a la Programación Orientada a Objetos
Mexicali B.C. 20 de Octubre del 2016
Polimorfismo:
En programación, polimorfismo seria la capacidad que tiene una clase en convertirse en un nuevo objeto sin cambiar su esencia y luego volver al objeto original de donde salió.
Es uno de los pilares de la programación orientada a objetos más utilizada, en lo único que los programadores no la usan es en las aplicaciones de negocios.
Existen 3 tipos de polimorfismo:
- Polimorfismo por herencia: cuando se hereda de una clase normal y puedo convertirme en ella.
- Polimorfismo por abstracción: cuando puedo heredar de una clase abstracta y puedo convertirme en ella.
- Polimorfismo por interface: es la posibilidad que tenemos de implementar una interface y puedo convertirme en ella.
Polimorfismo por Herencia:
Este tipo de polimorfismo es el más popular que existe, y tiene la facultad de heredar de una clase padre y reemplazarla.
[pic 2]
En un proyecto de consola se tienen que crear las siguientes tres clases:
public class Perro
{
public string ladrar()
{
return “Perro Ladrando”;
}
}
public class Chihuahua : Perro
{
}
public class Bulldog : Perro
{
}
En la clase perro tenemos un método que solo nos devuelve un string. Por otra parte las clases chihuahua y bulldog serán clases que heredaran el comportamiento de la clase perro.
Polimorfismo por Abstracción:
El polimorfismo por abstracción se da con el uso de las clases abstractas. Una clase abstracta es aquella que posee además de lo normal que contiene una clase, también cuenta con comportamientos que están definidos pero no implementados
Por ejemplo que sucedería si en el ejemplo anterior necesitamos implementar un comportamiento en los perros el cual sea dormir.
Primero para lograr esto debemos de declarar la clase perro como abstracta y luego declarar el método dormir para luego implementarlo en las clases hijos.
public abstract class Perro
{
public virtual string ladrar()
{
return “Perro Ladrando”;
}
public abstract string Dormir();
}
public class Bulldog : Perro
{
public override string ladrar()
...