No que se refere à arquitetura de software, julgue o item su...

Próximas questões
Com base no mesmo assunto
Q3156871 Arquitetura de Software

No que se refere à arquitetura de software, julgue o item subsecutivo. 


Na arquitetura orientada a objetos, o polimorfismo é baseado na escolha do método específico a ser realmente chamado no momento da execução da compilação.

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Para resolver a questão proposta, é importante entender o conceito de polimorfismo na arquitetura orientada a objetos. Este é um dos princípios fundamentais da Programação Orientada a Objetos (POO) e está relacionado à capacidade de um método de se comportar de diferentes maneiras, dependendo do objeto que o invoca. O polimorfismo permite que o mesmo nome de método execute diferentes operações, de acordo com o contexto de execução.

Explicação Teórica: Em POO, existem dois tipos principais de polimorfismo: o polimorfismo de sobrecarga e o polimorfismo de substituição (ou de tempo de execução). O polimorfismo de sobrecarga ocorre quando há vários métodos com o mesmo nome, mas com diferentes assinaturas, geralmente diferenciados pelo número ou tipo de parâmetros. Já o polimorfismo de substituição acontece quando um método declarado em uma classe pai é sobrescrito por uma classe filha, e a chamada ao método é resolvida em tempo de execução, dependendo do tipo do objeto que realiza a chamada.

No contexto da questão, é incorreto afirmar que o polimorfismo é baseado na escolha do método durante a execução da compilação. Essa descrição está equivocada porque, na verdade, o polimorfismo se refere à escolha do método ser feita em tempo de execução, não durante a compilação. Portanto, a alternativa correta é:

E - errado

Vamos entender por que a alternativa está errada:

1. A frase sugere que a decisão de qual método específico chamar é feita no momento da "execução da compilação", o que não faz sentido, pois a compilação e a execução são duas fases distintas. Na verdade, o polimorfismo dinâmico (ou de tempo de execução) é caracterizado exatamente pela decisão do método a ser chamado ocorrer durante a execução do programa, permitindo que diferentes classes implementem métodos de maneira específica, que são decididos em tempo de execução.

2. A confusão talvez tenha surgido com o polimorfismo de sobrecarga, que é resolvido em tempo de compilação, mas este não é o foco principal na maioria das discussões sobre polimorfismo em arquitetura orientada a objetos.

Portanto, ao ler questões desse tipo, é fundamental distinguir entre o tempo de compilação e o tempo de execução, e lembrar que o polimorfismo dinâmico está estritamente associado ao comportamento em tempo de execução.

Gostou do comentário? Deixe sua avaliação aqui embaixo!

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

Errado

o polimorfismo dinâmico – também conhecido como ligação tardia (late binding) – é resolvido em tempo de execução e não em tempo de compilação. Durante a compilação, ocorre a ligação estática (early binding), que não é o que caracteriza o polimorfismo. O polimorfismo permite que uma variável de um tipo de referência possa apontar para objetos de diferentes classes e que o método apropriado seja chamado conforme o objeto real durante a execução do programa.

Clique para visualizar este comentário

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