
Polimorfismo en JavaScript: Una Breve Introducción
Índice
¿Qué es el polimorfismo?
El polimorfismo es un concepto fundamental en la programación orientada a objetos que permite a objetos de diferentes tipos responder al mismo método o propiedad. En JavaScript, esto se traduce en la capacidad de un objeto para tomar muchas formas y comportarse de manera flexible.
Tipos de polimorfismo
En JavaScript, podemos identificar principalmente dos tipos de polimorfismo:
-
Polimorfismo de subtipos: Se logra a través de la herencia y permite que objetos de diferentes clases sean tratados como instancias de una clase base común.
-
Polimorfismo ad-hoc: Se implementa mediante la sobrecarga de métodos, aunque en JavaScript esto se simula ya que no soporta sobrecarga nativa.
Ejemplos prácticos
Veamos un ejemplo simple de polimorfismo de subtipos:
class Animal {
speak() {
return "El animal hace un sonido";
}
}
class Perro extends Animal {
speak() {
return "El perro ladra";
}
}
class Gato extends Animal {
speak() {
return "El gato maulla";
}
}
const animal = new Animal();
const perro = new Perro();
const gato = new Gato();
console.log(animal.speak()); // "El animal hace un sonido"
console.log(perro.speak()); // "El perro ladra"
console.log(gato.speak()); // "El gato maulla"
Conclusión
El polimorfismo en JavaScript nos permite escribir código más flexible y reutilizable. Aunque JavaScript no es un lenguaje estrictamente orientado a objetos, podemos aprovechar estos conceptos para crear estructuras de código más robustas y mantenibles.