O polimorfismo permite escrever programas que processam obje...

Próximas questões
Com base no mesmo assunto
Q3541423 Programação
O polimorfismo permite escrever programas que processam objetos que compartilham a mesma superclasse, direta ou indiretamente, como se todos fossem objetos da superclasse; isso pode simplificar a programação. Sobre esse tema, analise as afirmações a seguir:

I – Os métodos declarados com o modificador final podem ser sobrescritos, e as classes declaradas como modificador final não podem ser superclasses.
II – O polimorfismo permite-lhe tratar as generalidades e deixar que o ambiente de tempo de execução trate as especificidades.
III – Uma classe abstrata declara atributos e comportamentos comuns (ambos abstratos e concretos) das várias classes em uma hierarquia de classes.

DEITEL, Harvey M. Java como programar. 8a ed. São Paulo - SP: Pearson Printice Hall, 2010.

Assinale a alternativa correta:
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: D - As afirmações II e III são corretas.

Tema central: A questão aborda polimorfismo e conceitos relacionados à herança e classes abstratas na Plataforma Java. Esses tópicos são fundamentais para entender como a linguagem Java permite que objetos de diferentes classes sejam tratados de forma genérica, facilitando a manutenção e a extensão de sistemas.

Resumo teórico:

  • Polimorfismo: Permite que objetos de classes diferentes, mas relacionadas por herança, sejam manipulados por meio de uma referência comum (geralmente da superclasse), delegando o comportamento específico para o tempo de execução (runtime). Fonte: Deitel, Java Como Programar, 8ª edição.
  • Método final: Não pode ser sobrescrito por subclasses.
  • Classe final: Não pode ser estendida (ou seja, não pode ser superclasse).
  • Classe abstrata: Pode declarar atributos e métodos concretos e abstratos, servindo de base para outras classes.

Justificativa da alternativa correta (D):

II – Correta. O polimorfismo realmente permite tratar generalidades (por exemplo, usando uma referência do tipo da superclasse) e deixar que o ambiente de execução resolva qual comportamento específico será executado.
III – Correta. Uma classe abstrata pode sim definir tanto atributos comportamentos gerais (abstratos e concretos) para suas subclasses.

Análise das alternativas incorretas:

I – Incorreta. Afirma erroneamente que métodos final podem ser sobrescritos; na verdade, eles não podem ser sobrescritos. Porém, está correto em afirmar que uma classe final não pode ser superclasse. Como a primeira parte está errada, toda a afirmação é considerada incorreta.

Estratégia de interpretação:

Leia atentamente cada item e destaque palavras como “pode”, “não pode”, “final” e “abstrato”. Fique atento a afirmações absolutas e duplas negativas, que costumam ser pegadinhas. Em questões com afirmações múltiplas, avalie cada uma individualmente antes de marcar a alternativa.

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