Na Programação Orientada a Objetos, a alteração do funciona...

Próximas questões
Com base no mesmo assunto
Q865982 Engenharia de Software
Na Programação Orientada a Objetos, a alteração do funcionamento interno de um método herdado de um objeto pai consiste em:
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é a D - polimorfismo.

O polimorfismo é um conceito fundamental na programação orientada a objetos (POO) que permite que objetos de diferentes classes sejam tratados como objetos de uma classe comum. Em particular, o polimorfismo se manifesta quando temos uma classe derivada (ou subclasse) que herda de uma classe base (ou superclasse) e altera o comportamento de um ou mais métodos herdados. Isso é comumente realizado por meio da substituição de métodos (também conhecido como method overriding), onde a subclasse implementa uma nova versão do método herdado. Enquanto a herança é o mecanismo pelo qual a subclasse obtém os métodos da superclasse, o polimorfismo é o que permite a diversificação de comportamentos entre os diferentes objetos.

Para entender por que as outras alternativas estão incorretas, é útil revisar brevemente cada conceito:

  • Encapsulamento é a prática de esconder os detalhes internos da implementação de uma classe e expor apenas uma interface segura para o mundo exterior.
  • Abstração refere-se ao processo de esconder a complexidade real e mostrar apenas a funcionalidade necessária, muitas vezes por meio da definição de classes abstratas ou interfaces.
  • Herança é um mecanismo pelo qual uma nova classe é criada a partir de uma classe existente, herdando atributos e métodos, facilitando o reuso de código.

Em resumo, o polimorfismo é o conceito que mais se alinha com a descrição do enunciado, que é a capacidade de um método alterar seu comportamento em uma subclasse, mantendo a mesma assinatura da superclasse. É por isso que a alternativa D está correta.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Polimorfismo.

É um recurso dentro dos paradigmas da orientação a objetos, um recurso é utilizado para indicar a capacidade de abstrair várias implementações diferentes em uma única interface. Nesse caso, um objeto pode enviar a mesma mensagem para objetos semelhantes, mas que implementam a sua interface de formas diferentes.

 

 

Existem dois tipos de Polimorfismo:

Polimorfismo estático: Basicamente significa varios metodos com mesmo nome mas com parametros distintos (overloading)

Polimorfismo dinâmico:  Criação de subclasses (Herança) que determina o comportamento do metodo. (overriding)

É caso de polimorfismo em sua variante dinâmica. 

 

Polimorfismo Dinâmico: Esta associado com o conceito de herança e ocorre quando uma subclasse redefine um método existente na superclasse. Dizemos neste caso que o método foi sobreescrito (overriding) na subclasse. A decisão de qual método executar é tomada somente em tempo de execução, como veremos mais adiante.

Fonte: https://www.devmedia.com.br/orientacao-a-objetos-parte-ii/7161

Amigos,

Qual é a diferença entre essa questão e a Q856071, que diz :

"Um método em uma superclasse pode ser sobrescrito nas subclasses de uma relação de herança. "

Não entendi o porque lá foi herança e aqui foi polimorfismo.

Obrigado!

mateus cruz,

As questões apresentam questionamentos distintos:

Q856071 - Na programação orientada a objetos são utilizados classes e métodos. Um método

A questão quer saber se o metodo, PODE ser sobrescrito:
b) em uma superclasse pode ser sobrescrito nas subclasses de uma relação de herança. 

Já está questão quer saber qual o nome se dá para este ato.

Poliformismo dinâmico, com bem explico o Rodrigo.

 

Espero ter ajudado.

d-

polimorfismo. - é o princípio pelo qual duas ou mais classes, derivadas de uma mesma superclasse, podem invocar métodos que têm a mesma identificação mas comportamentos distintos.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo