Buscar

[AULA TEÓRICA 02 ] Herança em Python é um conceito fundamental da programação orientada a objetos (POO) que permite que uma classe herde atributos ...

[AULA TEÓRICA 02 ] Herança em Python é um conceito fundamental da programação orientada a objetos (POO) que permite que uma classe herde atributos e métodos de outra classe.
class Animal:
def __init__(self, age: int, height: int, weight: int, position: tuple):
self.age = age
self.height = height
self.weight = weight
self.position = position # position [position_x, position_y, position_z]
def move_x(self):
self.position[0] += 1
class Dog(Animal):
def __init__(self, age: int, height: int, weight: int, position: tuple):
super().__init__(age, height, weight, position)
def move_x(self):
self.position[2] += 2
class Cat(Dog):
def __init__(self, age: int, height: int, weight: int, position: tuple, fur_type = 'liso'):
super().__init__(age, height, weight, position, fur_type) def move_x(self):
self.position[3] += 4
melo = Cat(age=10, weight=30, position=(0, 0, 0), height=10)
print(melo.age)
O código acima não está sendo executado. Marque a alternativa que indica o motivo e o porque.

A O problema é na herança da classe Cat. Está deveria estender (herdar) da classe Animal
Apesar de logicamente incorreta a herança de Cat. Não é a razão do código não executar
B Não existe atributo fur_type na classe Cat
Não é um problema, pois no código acima esse valor nunca será lido
C O método mov_x deve ter uma anotação especial na Animal se este for modificado nas suas subclasses.
Não é necessário.
D A invocação do construtor de Animal está com um atributo a mais na classe Cat
Você assinalou essa alternativa (D)

Essa pergunta também está no material:

Linguagem programaçao aplicada
9 pág.

Linguagem de Programação Aplicada Centro Universitário UNINTERCentro Universitário UNINTER

💡 1 Resposta

User badge image

Ed Verified user icon

A alternativa correta é a letra D. A invocação do construtor de Animal está com um atributo a mais na classe Cat. Isso ocorre devido ao parâmetro "fur_type" que está sendo passado para o construtor de Animal, mas a classe Animal não possui esse parâmetro em seu construtor.

0
Dislike0

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

✏️ Responder

SetasNegritoItálicoSublinhadoTachadoCitaçãoCódigoLista numeradaLista com marcadoresSubscritoSobrescritoDiminuir recuoAumentar recuoCor da fonteCor de fundoAlinhamentoLimparInserir linkImagemFórmula

Para escrever sua resposta aqui, entre ou crie uma conta

User badge image

Outros materiais