¿Como heredar del método __init__ en clases Python?
Capítulo 42: Herencia de __init__ - Programación orientada a objetos
Terminamos en este curso con la programación orientada a objetos viendo como heredar propiedades del __init__
de otras clases.
Si quieres aprender más sobre este tema, puedes ver mi curso dedicado a la POO en Python.
Como heredar del método __init__ en clases Python
En el siguiente código tenemos una herencia, pero hay un problema, tenemos dos métodos __init__
, ¿Cuál de los dos se usa?
En este caso se utiliza el __init__
de la subclase, ya que al volver a declararlo, lo estamos reemplazando por el suyo propio.
El resto de elementos se heredan con normalidad.
Esto lo que demuestra, es que si en las subclases redeclaras cosas, prevalecen las redeclaraciones pertenecientes a la propia clase.
# Esta es la superclase
class Usuarios:
def __init__(self, nombre, apellidos)
self.nombre = nombre
self.apellidos = apellidos
def imprime_datos(self):
print('Nombre:', self.nombre, '\nApellidos:', self.apellidos)
# Esta es la subclase
class UsuariosPremium(Usuarios):
def __init__(self, nombre, apellidos, instagram)
self.nombre = nombre
self.apellidos = apellidos
self.instagram = instagram
Comentarios
Si te quedan dudas sobre el temario, sobre Python, o cualquier otra cosa relacionada o simplemente quieres agradecer, aquí tienes tu sitio para dejar tu granito de arena. Gracias por tus comentarios y por darle vida a este sitio web.