Polimorfismo significa «muchas formas»: objetos de clases distintas responden al mismo método cada uno a su manera.
Cuando el maestro dice «¡entreguen su trabajo!», cada alumno hace algo distinto: uno entrega un ensayo, otro una maqueta, otro un video. La orden es la misma; la forma de cumplirla depende de quién la recibe. El maestro no necesita saber qué hizo cada quien para pedirlo.
En código, eso permite recorrer una lista con objetos diferentes y llamar a area() o sonido() en todos, sin preguntar de qué clase es cada uno.
| Sin polimorfismo | Con polimorfismo |
|---|---|
if tipo == "circulo": … elif tipo == "rectangulo": … |
figura.area() |
Agregar una figura nueva obliga a cambiar todos los if |
Basta crear una clase nueva con su area() |