Questões

  Considere o seguinte trecho de um programa escrito na linguagem...

Responda:   Considere o seguinte trecho de um programa escrito na linguagem Python.                    class Carr...


Q117958 | , Analista de redes e comunicação de dados, DPE RJ, FGV

 

Considere o seguinte trecho de um programa escrito na linguagem Python.
 
                 class Carro(object): 
                       def FaleComigo(self): 
                             print "Sou um carro"
 
                 class Fusca (Carro): 
                       def FaleComUmFusca(self): 
                             print "Sou um Fusca"
 
                 x = Carro()
                 y = Fusca()
 
                 x.FaleComigo()
                 y.FaleComigo()
 

No primeiro bloco, o método FaleComigo é definido para a classe Carro, que simplesmente produz a mensagem “Sou um carro” ao ser invocado. Para a classe Fusca, definida no segundo bloco, foi definido o método FaleComUmFusca, que apenas produz a mensagem “Sou um Fusca”. No terceiro bloco, os objetos x e y tornam-se instâncias das classes Carro e Fusca, respectivamente. No quarto bloco, o método FaleComigo é invocado para cada um dos dois objetos, x e y. Ao ser executado, esse programa produz duas linhas na sua tela de saída:

                                Sou um carro
                                Sou um carro

A mensagem produzida no comando y.FaleComigo deve-se ao mecanismo de :

 

David Castilho
Por David Castilho em 01/01/2025 15:51:35🎓 Equipe Gabarite
Gabarito: d) herança.

Neste trecho de código em Python, temos a definição de duas classes: Carro e Fusca. A classe Fusca herda da classe Carro, o que significa que a classe Fusca possui todos os métodos e atributos da classe Carro.

Quando o método FaleComigo é invocado para o objeto y, que é uma instância da classe Fusca, o interpretador Python procura por esse método na classe Fusca. Como o método FaleComigo não está definido na classe Fusca, o interpretador Python busca na classe pai, que é a classe Carro. Dessa forma, o método FaleComigo da classe Carro é executado para o objeto y.

Esse mecanismo pelo qual um objeto pode utilizar métodos e atributos de uma classe pai é conhecido como herança. Portanto, a mensagem produzida no comando y.FaleComigo deve-se ao mecanismo de herança.
Utilizamos cookies e tecnologias semelhantes para aprimorar sua experiência de navegação. Política de Privacidade.