class Funcionario:
def __init__(self, nome, especialidade, horas):
self.nome = nome
self.especialidade = especialidade
self.horas = horas
def registra_horas(self, horas):
print('Horas registradas...')
self.horas += horas
def mostrar_tarefas(self):
print(f'{self.nome} fez muita coisa...')
class Caelum(Funcionario):
def mostrar_tarefas(self):
print(f'{self.nome} fez muita coisa, Caelumer')
def busca_cursos_do_mes(self, mes=None):
if mes:
print(f'Mostrando cursos - {mes} sobre {self.especialidade}')
else:
print(f'Mostrando cursos desse mês sobre {self.especialidade}')
class Alura(Funcionario):
def mostrar_tarefas(self):
print(f'{self.nome} fez muita coisa, Alurete!')
def busca_perguntas_sem_resposta(self):
print(f'Mostrando perguntas não respondidas do fórum sobre {self.especialidade}')
class Hipster:
def __str__(self):
return f'Hipster, {self.nome}'
class Junior(Alura):
pass
class Pleno(Alura, Caelum):
pass
class Senior(Caelum, Alura):
pass
junior = Junior('José', 'OOP', 3)
junior.busca_perguntas_sem_resposta()
junior.mostrar_tarefas()
print('-' * 60)
# AttributeError
# junior.busca_cursos_do_mes()
pleno = Pleno('Luan', 'HTML', 5)
pleno.busca_perguntas_sem_resposta()
pleno.busca_cursos_do_mes()
pleno.mostrar_tarefas()
print('-' * 60)
senior = Senior('Anna', 'Java', 10)
print(senior)
senior.busca_perguntas_sem_resposta()
senior.busca_cursos_do_mes()
senior.mostrar_tarefas()