0% encontró este documento útil (0 votos)
10 vistas

Poo-Semana 05

Este documento explica los conceptos de herencia y herencia múltiple en Python. La herencia permite crear nuevas clases que heredan atributos y métodos de clases existentes, mientras que la herencia múltiple permite que una clase herede de múltiples clases base.

Cargado por

eromerod
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
10 vistas

Poo-Semana 05

Este documento explica los conceptos de herencia y herencia múltiple en Python. La herencia permite crear nuevas clases que heredan atributos y métodos de clases existentes, mientras que la herencia múltiple permite que una clase herede de múltiples clases base.

Cargado por

eromerod
Derechos de autor
© © All Rights Reserved
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 17

Escuela Profesional de Ingeniería de Software

Programación Orientada a Objetos


Resultado de aprendizaje:
Al finalizar la sesión, el estudiante aplica
herencia en su modelo de análisis de manera
responsable.
Temario:

En esta sesión se aprenderá:


❑ Herencia de Python
❑ Herencia múltiple
Herencia en python
En Python, la herencia es un mecanismo que permite
crear una nueva clase basada en una clase ya existente.
La nueva clase, llamada clase derivada o subclase,
hereda todos los atributos y métodos de la clase
original, llamada clase base o superclase. La subclase
puede añadir nuevos atributos y métodos, o
sobrescribir los existentes, y también puede heredar de
varias clases a la vez.
Herencia en python
La sintaxis para definir una clase derivada es la siguiente:
• En este ejemplo, Subclase es la nueva clase que se está creando, y ClaseBase es la
clase que se está heredando. El método __init__ de la subclase llama al método
__init__ de la clase base utilizando super(), para inicializar los atributos de la clase
base. Luego, se inicializan los nuevos atributos de la subclase. Finalmente, se
define un nuevo método metodo_subclase que es específico de la subclase.
• En este ejemplo, se definen tres clases: Persona, Estudiante y Profesor. La
clase Estudiante y Profesor son subclases de la clase Persona, lo que
significa que heredan sus atributos y métodos.

• La clase Persona tiene un método saludar que muestra un saludo con el


nombre de la persona. La clase Estudiante añade un nuevo atributo carrera
y un nuevo método estudiar que muestra qué carrera está estudiando. La
clase Profesor añade un nuevo atributo materia y un nuevo método enseñar
que muestra qué materia está enseñando.

• Luego, se crean dos objetos: estudiante y profesor, que son instancias de las
clases Estudiante y Profesor, respectivamente. Se llaman a los métodos
saludar, estudiar, enseñar, para mostrar el funcionamiento de la herencia.
La herencia múltiple
• La herencia múltiple en Python es un mecanismo que permite a una clase derivada
heredar atributos y métodos de múltiples clases base. Esto significa que una clase
puede tener múltiples clases base y heredar todo lo que éstas contienen. En
Python, la herencia múltiple se define separando las clases base con comas dentro
de la definición de clase.
La sintaxis para definir una clase que hereda
de múltiples clases es la siguiente:
• En este ejemplo, Subclase es la nueva clase que se está creando, y ClaseBase1,
ClaseBase2, ..., ClaseBaseN son las clases que se están heredando. El método
__init__ de la subclase llama al método __init__ de una de las clases base
utilizando super(), para inicializar los atributos de una de las clases base. Luego,
se inicializan los nuevos atributos de la subclase. Finalmente, se define un nuevo
método metodo_subclase que es específico de la subclase.
Ejemplo de herencia múltiple:
• En este ejemplo, se definen tres clases: Persona, Trabajador y Estudiante. La clase Estudiante es
una subclase de Persona y Trabajador, lo que significa que hereda sus atributos y métodos.

• La clase Persona tiene un método saludar que muestra un saludo con el nombre de la persona. La
clase Trabajador tiene un método trabajar que indica que está trabajando y un atributo salario. La
clase Estudiante añade un nuevo atributo carrera y un nuevo método estudiar que muestra qué
carrera está estudiando.

• Luego, se crea un objeto estudiante que es una instancia de la clase Estudiante. Se llama a los
métodos saludar, estudiar, trabajar, para mostrar el funcionamiento de la herencia múltiple.
También se muestra el salario del estudiante mediante el atributo salario heredado de la clase
Trabajador.
En conclusión:
• La herencia múltiple en Python es una poderosa herramienta de programación que
permite a una clase derivada heredar atributos y métodos de múltiples clases base. Esto
nos permite reutilizar el código y crear jerarquías de clases complejas que pueden ser
fácilmente mantenidas y ampliadas.

• Es importante tener en cuenta que la herencia múltiple puede llevar a la complejidad del
código y a la posible ambigüedad en caso de que varias clases base tengan el mismo
método o atributo. Por lo tanto, se debe tener cuidado al usarla y asegurarse de que la
jerarquía de clases sea clara y fácil de entender.

• En general, la herencia múltiple en Python es una característica muy útil que puede
simplificar la escritura de código, permitiendo la creación de clases más flexibles y
extensibles.

También podría gustarte