Em orientação a objetos, um certo conceito refere-se à habi...

Próximas questões
Com base no mesmo assunto
Q1836561 Engenharia de Software
Em orientação a objetos, um certo conceito refere-se à habilidade de diferentes objetos responderem à mesma mensagem de modos distintos, possibilitando a interação entre eles sem que conheçam seus tipos exatos. Esse conceito é conhecido como
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

A alternativa correta é D - polimorfismo.

Vamos entender melhor o conceito abordado na questão. Em orientação a objetos, o polimorfismo é a capacidade que objetos de diferentes classes têm de responder à mesma mensagem (ou chamada de método) de maneiras distintas. Isso permite que os objetos interajam entre si sem a necessidade de conhecerem os tipos exatos uns dos outros.

Agora, vejamos por que essa alternativa é a correta e por que as outras não são:

D - polimorfismo: O polimorfismo é fundamental em programação orientada a objetos. Ele permite que métodos com o mesmo nome em diferentes classes possam ser chamados de forma intercambiável, adaptando-se ao objeto que os invoca. Por exemplo, um método “desenhar” pode ser chamado tanto para objetos da classe Círculo quanto para objetos da classe Quadrado, cada um implementando o método de forma específica.

A - persistência: Refere-se à capacidade de um objeto em manter seus dados armazenados entre diferentes execuções de um programa. Embora importante, a persistência não está relacionada à habilidade de objetos responderem de formas diferentes à mesma mensagem.

B - exceção: Trata-se de um mecanismo que lida com erros e outras condições excepcionais durante a execução de um programa. Não tem relação com a capacidade de responder a uma mesma mensagem de formas distintas.

C - pacote: É uma forma de organizar classes e interfaces em um namespace. Pacotes ajudam a evitar conflitos de nomes e a organizar o código, mas não têm relação direta com a habilidade de diferentes objetos responderem à mesma mensagem.

E - sobrecarga: Embora pareça similar ao polimorfismo, a sobrecarga se refere à definição de múltiplos métodos com o mesmo nome, mas com diferentes assinaturas (número ou tipo de parâmetros) dentro da mesma classe. A sobrecarga não envolve objetos de diferentes classes, portanto, não se aplica ao conceito descrito na questão.

Portanto, a alternativa que define corretamente a habilidade de diferentes objetos responderem à mesma mensagem de maneiras distintas é D - polimorfismo. Esse conceito é essencial para a flexibilidade e a reutilização de código em programas orientados a objetos.

Espero que essa explicação tenha clarificado suas dúvidas. Qualquer outra questão, estou à disposição para ajudar!

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

Gabarito: D A sobrecarga é a forma como representa o polimorfismo na codificação, mas a questão diz diretamente sobre o conceito em OO que é o polimorfismo.

@Thagner

Sobrecarga é um tipo de polimorfismo(estático), mas a questão deixa claro que se trata de polimorfismo dinâmico aqui "diferentes objetos responderem à mesma mensagem de modos distintos", mesma assinatura e comportamento diferente.

No Polimorfismo, os mesmos atributos e objetos podem ser utilizados em objetos distintos, porém, com implementações lógicas diferentes.

Por exemplo: podemos assumir que uma bola de futebol e uma camisa da seleção brasileira são artigos esportivos, mais que o cálculo deles em uma venda é calculado de formas diferentes.

Outro exemplo: podemos dizer que uma classe chamada Vendedor e outra chamada Diretor podem ter como base uma classe chamada Pessoa, com um método chamado CalcularVendas. Se este método (definido na classe base) se comportar de maneira diferente para as chamadas feitas a partir de uma instância de Vendedor e para as chamadas feitas a partir de uma instância de Diretor, ele será considerado um método polimórfico, ou seja, um método de várias formas.

Sobrescrita: polimorfismo dinâmico – envolve 2 classes (classe derivada herda e redefine método da classe base)

Sobrecarga: Polimorfismo estático – métodos com mesmo nome e assinaturas diferentes na mesma classe.

Clique para visualizar este comentário

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