← Questões de Engenharia de Software

Engenharia de Software · IDECAN · 2023

Questão comentada de Engenharia de Software

Princípio pelo qual duas ou mais classes derivadas de uma mesma superclasse podem invocar métodos que têm a mesma identificação (assinatura) mas comportamentos distintos, especializados para cada classe derivada, usando para tanto uma referência a um objeto do tipo da superclasse. O texto acima refere-se a(o):

Gabarito: A

A questão descreve o polimorfismo, um dos pilares da orientação a objetos. A ideia central é simples: uma mesma interface ou assinatura de método pode produzir comportamentos diferentes conforme o objeto real que está por trás da referência. Em outras palavras, você chama o mesmo método, mas cada classe filha responde do seu jeito, como uma equipe em que todo mundo atende pelo mesmo “alô”, só que cada um resolve a coisa de um modo. Isso acontece muito quando você usa uma referência do tipo da superclasse para apontar para objetos de subclasses. Na hora da execução, o sistema escolhe qual implementação do método deve ser usada, com base no tipo real do objeto. Esse é justamente o princípio descrito no enunciado: mesma assinatura, comportamentos especializados e uso de referência da superclasse. Por isso, o gabarito é a alternativa A. Em doutrina de OO, esse comportamento é chamado de polimorfismo, especialmente o polimorfismo por sobrescrita (ou de inclusão), em que métodos com a mesma assinatura assumem versões diferentes nas subclasses. Não é herança, porque herança é a relação estrutural entre classes; não é abstração, que trata de modelar o essencial; e não é encapsulamento, que protege o acesso aos dados. Se quiser guardar uma regra prática: herança organiza a hierarquia, encapsulamento protege, abstração simplifica e polimorfismo faz o mesmo método ter várias “caras”. Essa questão mistura herança com o efeito visível em tempo de execução, mas o nome do princípio pedido é polimorfismo.

Continue treinando

Questões relacionadas