Herança
Na classe filha, você mantém a palavra que a classe mãe já guarda e troca só uma tarefa. Desk é filha de Lamp, e você escreve isso como Desk(Lamp). Não há pacote nem pasta nenhuma nisso. Desk("blue") continua guardando blue, porque a filha não reescreveu init. O label da mãe coloca glow na frente da palavra. O label da filha coloca desk na frente dela. Você ainda constrói cada lâmpada por conta própria: a linha class Desk(Lamp), sozinha, não constrói lâmpada nenhuma.
class Lamp:
def __init__(self, color):
self.color = color
def label(self):
return "glow " + self.color
class Desk(Lamp):
def label(self):
return "desk " + self.color
plain = Lamp("blue")
desk = Desk("blue")
print(plain.label())
print(desk.label())
Na tela aparecem duas linhas: glow blue e, depois, desk blue. plain vem de Lamp, então roda a tarefa da mãe. desk vem de Desk, então roda a tarefa da filha. Cada linha tem um espaço entre a palavra da frente e blue. As duas lâmpadas guardam a mesma palavra; só mudou a tarefa que vem na frente. O print escreve as linhas. Os métodos devolvem as palavras.
A filha não reescreve a mãe. Uma Lamp continua dizendo glow blue. Não há lâmpada vermelha nesta página. O que mudou foi qual tarefa roda para um Desk. plain.color e desk.color são ambos blue. A filha não guardou cor nova; ela só trocou o label. Se a filha não tivesse um label próprio, a linha glow da mãe rodaria também para desk. Como esta filha tem label próprio, a segunda linha é desk blue.
A próxima página trata de métodos especiais. Esta página mostra apenas uma filha que mantém a palavra guardada e troca uma tarefa.
A filha mantém a palavra
Desk é filha de Lamp. Na tela aparece glow blue e depois desk blue. A palavra guardada continua blue. A filha troca o label e não reescreve a mãe. A próxima página trata de métodos especiais.
🧠 Teste Seu Conhecimento
Teste Seu Conhecimento
Desafie-se com este questionário interativo e veja o quão bem você entende o tópico
📝 Instruções
- Leia cada pergunta cuidadosamente
- Selecione a melhor resposta para cada pergunta
- Você pode refazer o quiz quantas vezes quiser
- Seu progresso será mostrado no topo