Na programação orientada a objetos, o mecanismo pelo qual do...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: C - sobrecarga.
A questão aborda um conceito fundamental da Programação Orientada a Objetos (POO), que é a capacidade de uma classe ter métodos com o mesmo nome, mas que se diferenciam pelo conjunto de parâmetros que recebem. Esse mecanismo é conhecido como sobrecarga de métodos ou method overloading. Com isso, um mesmo nome de método pode ser reutilizado para realizar operações similares, mas com diferentes tipos ou quantidades de parâmetros.
Para entender por que a alternativa C é correta, é importante destacar que a sobrecarga permite que os desenvolvedores criem vários métodos com o mesmo nome na mesma classe, desde que cada um deles tenha uma lista de parâmetros única. Isso aumenta a flexibilidade e legibilidade do código, permitindo que o mesmo termo descritivo seja usado para métodos que executam ações semelhantes em tipos diferentes de entrada.
Vamos explorar brevemente as outras opções para reforçar o entendimento:
- Encapsulação: Refere-se ao conceito de ocultar os detalhes internos do funcionamento de uma classe, expondo somente as operações seguras e necessárias aos usuários dessa classe.
- Herança: É um mecanismo que permite que uma classe herde campos e métodos de outra classe, facilitando a reutilização de código.
- Assinatura: Refere-se geralmente à combinação do nome de um método e da sua lista de parâmetros. No contexto de sobrecarga, métodos com o mesmo nome devem ter assinaturas diferentes (listas de parâmetros distintas).
- Polimorfismo: É a capacidade de um método processar objetos de forma diferente dependendo da classe ou do tipo de dado com que eles foram instanciados.
Neste contexto, fica claro que a alternativa C - sobrecarga é a correta, pois descreve exatamente o mecanismo pelo qual métodos de mesmo nome podem coexistir numa classe, diferenciados pelas suas listas de parâmetros.
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
Na programação orientada a objetos, um método aplicado a um objeto é selecionado para execução através da sua assinatura e da verificação a qual classe o objeto pertence. Através do mecanismo de sobrecarga (overloading), dois métodos de uma mesma classe podem ter o mesmo nome, desde que suas listas de parâmetros sejam diferentes, constituindo assim uma assinatura diferente. Tal situação não gera conflito pois o compilador é capaz de detectar qual método deve ser escolhido a partir da análise dos tipos de argumentos do método.
Um exemplo do uso de sobrecarga em Java é encontrado nos métodos abs(), max() e min() da classe , que têm implementações alternativas para quatro tipos de argumentos distintos.
pergunta com duas respostas, é polimorfismo de sobrecarga e tbm apenas polimorfismo.
A questão trata do mecanismo em que dois métodos podem ter o mesmo nome. Isso se chama sobrecarga e é uma das formas do polimorfismo. Isso poderia ser motivo para anulação, pois também temos o item polimorfismo. Entretanto, a questão cobrou de forma específica, sendo aquele "mecanismo pelo qual dois métodos de mesma classe podem ter mesmo nome, desde que suas listas de parâmetros sejam diferentes".
obs: comentário do prof do tecconcursos
Já nessa questão, essa banca tupiniquim fala que é polimorfismo!
https://www.qconcursos.com/questoes-de-concursos/questoes/9a92e33a-76
Polimorfismo Estático(sobrecarga/overloading): é representado com o nome do método igual e parâmetros diferentes. A decisão do método a ser chamado é tomada em tempo de compilação de acordo com os argumentos passados.
Polimorfismo Dinâmico(sobrescrita/overriding): também conhecido como polimorfismo por, polimorfismo por inclusão, polimorfismo por herança, polimorfismo por subtipo, redefinição ou overriding. Ele está associado ao conceito de herança e é representado com o nome e parâmetros do método iguais. Nesse caso, a subclasse redefine o método da superclasse e a decisão do método a ser chamado é tomada em tempo de execução
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo