Polimorfismo

Polimorfismo.

El polimorfismo en la programación orientada a objetos (POO) es la capacidad que tienen los objetos de diferentes clases de responder a un mismo mensaje o evento de manera diferente. Esto significa que podemos enviar el mismo mensaje a diferentes objetos y cada uno de ellos lo interpretará y responderá de acuerdo a su propia implementación.


Figura 1. Animales

En la figura 1 todos son animales, sin embargo, realizan una misma acción de forma diferente. Por ejemplo el andar: unos caminan lento, otros corren, otros saltan mientras corren, otros vuelan, etc.


¿Cómo funciona el polimorfismo?

Imagina que se tiene un sistema donde se encuentra una clase FiguraGeométrica de la cual heredan las clases Rectangulo, Triangulo y Cubo. La imagen ilustra estás relaciones.

Figura 2. Herencia

Todos cuentan con el método GetArea pero la manera de calcularse depende del tipo de objeto, es decir:

  • Rectangulo: se calcula multiplicando Lado1 * Lado2
  • Triangulo: se calcula multiplicando Base * Altura

Beneficios del polimorfismo

El polimorfismo ofrece varias ventajas en la programación orientada a objetos:

  • Flexibilidad: Permite que el código sea más flexible y adaptable a diferentes situaciones.
  • Reutilización de código: Facilita la reutilización de código, ya que podemos definir métodos genéricos que se pueden redefinir en clases derivadas para casos de uso específicos.
  • Modularidad: Promueve la modularidad del código, lo que facilita su mantenimiento y comprensión.
  • Elegancia del código: Permite escribir código más elegante y expresivo.


Comentarios

Entradas más populares de este blog

Principios SOLID

Descomposición arquitectónica de software

Gráficas de Pareto