Olá, estou com uma dúvida relacionada a herança de propriedades das classes.
Nesse Aula
Fizemos a seguinte herença :
class Funcionario:
def __init__(self, nome):
self.nome = nome
# restante do código
class Alura(Funcionario) :
def mostrar_tarefas(self):
print('Fez muita coisa, Alurete!')
def busca_perguntas_sem_resposta(self):
print('Mostrando perguntas não respondidas do fórum')
Aqui existe um herença certo ? Onde a classe Alura deveria receber todos atributos e metodos da classe Funcionario, como por exemplo o nome.
No entanto na Aula anterior, (se eu entendi direito), nos fizemos a mesma coisa, mas nos usamos o
super()__init__(nome)
Por exemplo :
class Programa:
def __init__(self,nome, ano):
self._nome = nome.title()
self.ano = ano
self._likes = 0
# resto do código
class Filme(Programa):
def __init__(self,nome, duracao, ano): #Aqui
super().__init__(nome, ano)
self.duracao = duracao
Minha pergunta é qual a difereça ? quando nao usamos o super estamos dizendo " use todos atributos" e quando usamos ?
Obrigado pela atenção
Paris Mollo