Skip to content

Commit fbc6bfb

Browse files
m41b3cm41b3c
authored andcommitted
sobrescrita de métodos
1 parent 9ff4f25 commit fbc6bfb

2 files changed

Lines changed: 14 additions & 8 deletions

File tree

OO/pessoa.py

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ def __init__(self, *filhos, nome=None, idade=35):
77
self.filhos = list(filhos)
88

99
def cumprimentar(self):
10-
return f'Olá {id(self)}'
10+
return f'Olá, meu nome é {self.nome}'
1111

1212
# metodos de Classe
1313
@staticmethod
@@ -20,7 +20,9 @@ def nome_e_atributos_de_classe(cls):
2020

2121

2222
class Homem(Pessoa):
23-
pass
23+
def cumprimentar(self):
24+
cumprimentar_da_classe = super().cumprimentar()
25+
return f'{cumprimentar_da_classe}. Aperto de mão'
2426

2527
class Mutante(Pessoa):
2628
olhos = 3
@@ -30,7 +32,7 @@ class Mutante(Pessoa):
3032
sofia = Pessoa(nome='Sofia')
3133
valentina = Pessoa(nome="Valentina")
3234
jacir = Homem(sofia, nome='Jacir')
33-
jacir = Mutante(nome='Jacir')
35+
#jacir = Mutante(nome='Jacir')
3436
print(Pessoa.cumprimentar(jacir))
3537
print(id(jacir))
3638
print(jacir.cumprimentar())
@@ -67,4 +69,9 @@ class Mutante(Pessoa):
6769
print(isinstance(jacir, Homem))
6870

6971
#teste de sobrescrita de atributo de dados
72+
7073
print(jacir.olhos)
74+
75+
# Teste sobrescrita de métodos.
76+
print(sofia.cumprimentar())
77+
print(jacir.cumprimentar())

atores.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -57,11 +57,11 @@ def colidir(self, outro_ator, intervalo=1):
5757

5858

5959
class Obstaculo(Ator):
60-
pass
60+
_caracter_ativo = 'O'
6161

6262

6363
class Porco(Ator):
64-
pass
64+
_caracter_ativo = '@'
6565

6666

6767
class DuploLancamentoExcecao(Exception):
@@ -133,9 +133,8 @@ def lancar(self, angulo, tempo_de_lancamento):
133133

134134

135135
class PassaroAmarelo(Passaro):
136-
137-
pass
136+
pass
138137

139138

140139
class PassaroVermelho(Passaro):
141-
pass
140+
_caracter_ativo = 'V'

0 commit comments

Comments
 (0)