Polimorfismo en Programación Orientada a Objetos

¿Qué es el polimorfismo?

El polimorfismo permite que diferentes clases respondan al mismo método, pero cada una a su manera.

Es como decir:
  • Un Perro hace_sonido() → "Guau"
  • Un Gato hace_sonido() → "Miau"
  • Un Pato hace_sonido() → "Cuac"
El método se llama igual, pero el comportamiento cambia.

Ventajas del polimorfismo

El polimorfismo permite:
  • Escribir código más flexible
  • Reutilizar funciones que aceptan distintos tipos
  • Evitar condicionales innecesarios
  • Extender comportamientos sin modificar código existente

Ejemplo de polimorfismo en Python

class Animal:
    def hacer_sonido(self):
        return "Sonido genérico"

class Perro(Animal):
    def hacer_sonido(self):
        return "Guau!"

class Gato(Animal):
    def hacer_sonido(self):
        return "Miau!"

# Función que usa polimorfismo
def reproducir_sonido(animal):
    print(animal.hacer_sonido())

reproducir_sonido(Perro())  # Guau!
reproducir_sonido(Gato())   # Miau!
Inicio
Ir al blog de Daniel