15 - Concepto e implementación del polimorfismo en Python

Lección 15 del curso Python Nivel Avanzado.

Introducción

En la lección anterior vimos cómo implementar el concepto de herencia en Python con lo cual pudimos crear subclases que tenían atributos y métodos heredados de la clase madre.

Y en esta lección veremos otro elemento muy usado en la Programación Orientada a Objetos: el polimorfismo, que permite dar diferentes usos a un mismo método o atributo dependiendo de la clase o subclase que estemos usando.

Contenido exclusivo suscriptores

Suscríbete y accede al código fuente y al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Principio básico del polimorfismo

En varias lecciones de este y de los cursos anteriores hemos hecho uso de la función len, que permite obtener el número de ítems de un objeto.

Y esta misma función la podemos aplicar a diferentes tipos de datos (listas, tuplas, diccionarios, strings, etc.).

El polimorfismo en la Programación Orientada a Objetos

El mismo concepto de polimorfismo lo podemos aplicar en la Programación Orientada a Objetos.

Por ejemplo podemos tener la clase madre Vehiculo con métodos específicos. De esta clase podemos derivar las clases Avion y Bote pero podemos hacer que los métodos heredados se comporten de manera diferente.

Veamos esto en detalle:

Contenido exclusivo suscriptores

Recuerda suscribirte para acceder al código fuente y al video con la explicación detallada de esta lección. Además podrás disfrutar de todos los cursos de la Academia Online

Así que el polimorfismo nos permite procesar objetos de manera diferente dependiendo del tipo de dato al que pertenezcan.

Conclusión

Muy bien, hasta este punto hemos visto todos los conceptos y aspectos prácticos esenciales de la Programación Orientada a Objetos: las clases, las instancias, los métodos y atributos, la herencia y el polimorfismo.

Así que en la próxima lección vamos a ver algunas sugerencias para el desarrollo de nuestros programas usando la Programación Orientada a Objetos, lo que nos servirá como guía cuando queramos desarrollar proyectos bajo este enfoque de programación.

Ver todas las lecciones de este curso