Want to create interactive content? It’s easy in Genially!

Get started free

5100_UD02_1.3

CESUR

Created on January 30, 2026

Start designing with a free template

Discover more than 1500 professional designs like these:

Akihabara Agenda

Akihabara Content Repository

Internal Guidelines for Artificial Intelligence Use

Correct Concepts

Sorting Cards

Interactive Scoreboard

Semicircle Mind Map

Transcript

Sobrescritura de métodos

1. Proceso de sobreescritura

El proceso de sobrescritura se realiza simplemente definiendo en la clase hija un método con el mismo nombre que el método heredado de la clase padre. Cuando se invoca ese método sobre un objeto de la clase derivada, Python ejecuta la versión definida en la clase hija en lugar de la del padre. Esta sustitución ocurre de forma automática y transparente, permitiendo que cada clase especialice el comportamiento según sus requisitos específicos sin afectar a otras clases de la jerarquía

Sobrescritura de métodos

2. Decisión de sobrescribir

La decisión de sobrescribir un método debe basarse en la necesidad real de modificar el comportamiento heredado. Los escenarios típicos incluyen situaciones donde la implementación general del padre resulta insuficiente o inapropiada para la clase hija. Por ejemplo, un método calcular_area() definido en una clase Figura puede tener implementaciones completamente diferentes en las clases derivadas Circulo, Rectangulo y Triangulo, ya que cada forma geométrica requiere una fórmula matemática específica para calcular su área.

Sobrescritura de métodos

3. Especialización de comportamiento

La especialización de comportamiento mediante sobrescritura permite crear jerarquías donde el contrato de la interfaz se mantiene constante mientras que la implementación varía según el tipo concreto. Esta técnica resulta fundamental para implementar el polimorfismo, donde diferentes objetos pueden procesarse de manera uniforme a través de referencias a la clase base, pero cada uno ejecuta su propia versión especializada de los métodos. El código cliente puede trabajar con objetos de tipo Figura sin conocer si está manipulando un Circulo o un Rectangulo, confiando en que cada uno calculará correctamente su área.

Sobrescritura de métodos

4. Sobrescritura parcial

La sobrescritura parcial combina la funcionalidad heredada con comportamiento adicional específico. Mediante el uso de super(), la clase hija puede invocar primero la implementación del padre y luego añadir su propia lógica. Esta técnica resulta especialmente útil cuando el comportamiento del padre sigue siendo válido pero necesita complementarse. Por ejemplo, un método validar_datos() en una clase FormularioBase puede realizar validaciones generales, y las clases derivadas FormularioRegistro o FormularioPago pueden invocar super().validar_datos() y posteriormente añadir validaciones específicas de su contexto.

Sobrescritura de métodos

5. Métodos abstractos

Los métodos abstractos representan un caso especial donde la clase padre define la firma del método pero no proporciona implementación, obligando a las clases derivadas a sobrescribirlo. Aunque Python no impone esta restricción de forma estricta como otros lenguajes, el módulo ABC (Abstract Base Classes) permite definir métodos abstractos que deben ser implementados obligatoriamente por las subclases. Esta técnica garantiza que todas las clases derivadas proporcionen implementaciones concretas de los métodos esenciales definidos en la interfaz común.