Anulación de métodos en Python
Publicado: 2023-01-28Tabla de contenido
Requisitos previos para comprender la anulación de métodos:
La anulación de métodos es uno de los conceptos más significativos en la programación orientada a objetos. La implementación de una función específica en la clase secundaria definida en una clase principal puede cambiarse mediante la anulación de métodos. La anulación de métodos se puede definir como la capacidad de la clase secundaria para alterar la ejecución de un método ofrecido por una de sus clases principales, denominadas ancestros. Para anular una función, la clase debe cumplir los siguientes criterios.
- Clase heredable: no es posible realizar anulaciones de funciones dentro de una clase. Es necesario derivar una clase secundaria de una clase principal.
- La firma de la función redefinida en la clase secundaria y la de la clase principal deben ser las mismas. En otras palabras, la función anulada y la función en la clase principal deben tener la misma cantidad de argumentos y parámetros.
Una descripción general de la anulación de métodos en Python:
Como se definió anteriormente, la propiedad de anulación de métodos de un lenguaje de programación orientado a objetos en virtud de la cual la subclase proporciona una implementación particular del método que ya ofrece una de sus superclases. Se dice que el método en una subclase (clase secundaria) anula un método de superclase (clase principal) cuando el método de la subclase tiene los mismos parámetros o firma, el mismo nombre y el mismo tipo de retorno o subtipo que el método en su superclase.
El objeto utilizado para invocar un método ejecutado determina su versión. La versión de la superclase se ejecutará si se utiliza un objeto de la superclase para llamar al método. Sin embargo, si un objeto de la subclase invoca un método, se ejecutará la versión de la clase secundaria. En otros términos, el tipo de objeto al que se hace referencia se utiliza para determinar la versión del método que se invalida y ejecuta. La versión del método invalidado no está determinada por el tipo de la variable de referencia.
Consulte los cursos de ciencia de datos de upGrad
Beneficios de la anulación de métodos:
La principal ventaja de la anulación de métodos en Python es que la clase ofrece un modelo definido por sí mismo al método heredado sin alterar el código de la clase principal. Esta característica también es beneficiosa en los casos en que una clase secundaria utiliza una clase principal con varias clases secundarias. En este caso, la clase secundaria puede invocar el método y los parámetros de la clase principal sin modificar el código de la clase principal.
Explore nuestros cursos populares de ciencia de datos
Programa Ejecutivo de Postgrado en Data Science del IIITB | Programa de Certificado Profesional en Ciencia de Datos para la Toma de Decisiones Empresariales | Maestría en Ciencias en Ciencia de Datos de la Universidad de Arizona |
Programa de Certificado Avanzado en Ciencia de Datos de IIITB | Programa de certificado profesional en ciencia de datos y análisis empresarial de la Universidad de Maryland | Cursos de ciencia de datos |
Lea nuestros populares artículos de ciencia de datos
Trayectoria profesional en ciencia de datos: una guía profesional completa | Crecimiento profesional en ciencia de datos: el futuro del trabajo ya está aquí | ¿Por qué es importante la ciencia de datos? 8 formas en que la ciencia de datos aporta valor al negocio |
Relevancia de la ciencia de datos para los gerentes | La última hoja de trucos de ciencia de datos que todo científico de datos debería tener | Las 6 razones principales por las que debería convertirse en científico de datos |
Un día en la vida del científico de datos: ¿Qué hacen? | Mito reventado: la ciencia de datos no necesita codificación | Business Intelligence vs Data Science: ¿Cuáles son las diferencias? |
Diferencias entre la anulación de métodos y la sobrecarga de métodos
Anulación de métodos | Sobrecarga de métodos |
Los métodos o funciones en las clases padre e hijo deben tener las mismas firmas y los mismos nombres. | Las funciones o métodos deben tener los mismos nombres. Sin embargo, sus firmas no necesitan ser las mismas. |
Este es un ejemplo de polimorfismo en tiempo de ejecución. | Este proceso es un ejemplo de polimorfismo en tiempo de compilación. |
La herencia es imprescindible para la anulación de métodos en Python. | La herencia de clases puede ser necesaria en algunos casos. Sin embargo, puede no ser necesario en todos los casos. |
La anulación de métodos ocurre entre los métodos de la clase principal y la clase secundaria. Sin embargo, no puede suceder dentro de una clase. | La sobrecarga de métodos ocurre entre los métodos dentro de la misma clase. |
Esta característica se utiliza para alterar el comportamiento de los métodos existentes. | Se utiliza para agregar más al comportamiento del método. |
Se requieren al menos dos clases (una clase secundaria y una clase principal) para realizar la anulación de métodos. | No se requieren clases adicionales porque la sobrecarga ocurre entre los métodos dentro de la misma clase. |
Si desea obtener información detallada sobre la anulación de métodos en Python, le sugerimos que realice la Maestría en Ciencias en Ciencia de Datos de 18 meses . upGrad ofrece este curso de IIIT Bangalore y Liverpool John Moore's University. El curso le enseña habilidades como estadísticas, análisis predictivo con Python, aprendizaje automático, visualización de datos, análisis de big data y más. Los estudiantes con un sólido conocimiento de los conceptos de Python están bien posicionados para abordar temas como Deep Learning, Natural Language Processing, Business Analytics e Data Engineering.