Polimorfismo Java, que es el polimorfismo y sus tipos.
Hay dos tipos establecidos de polimorfismo:
-
El polimorfismo en tiempo de ejecución (
runtime) o dinámico, que lo podemos implementar con la sobre escritura (overriding) de métodos. -
El polimorfismo en tiempo de compilación (
compile time) o estático, que lo podemos implementar en la sobrecarga (overloading) de métodos
Hay una confusión entre algunas programadores a la hora de aceptar que la sobrecarga de métodos también es un Polimorfismo, básicamente si nos fijamos en el concepto se podría afirmar que si, ya que el mismo método puede tomar distintas formas dependiendo de los parámetros recibidos, como ya aclaramos un poco lo que es la teoría vamos aplicar los dos tipos de Polimorfismo en la práctica.
Polimorfismo en tiempo de ejecución (
runtime), es el más usado y se podría implementar con dos clases hijas que hereden de una clase padre. Este es el diagrama de clases del ejemplo: