Questão nº 33
Questão de Tecnologia da Informação · CESGRANRIO BASA 01/2018 (nº 33)
A linguagem de programação Java suporta
- Apassagem de parâmetros de tipos primitivos por referência
- Bsobrecarga de operadores
- Cherança múltipla
- Dpolimorfismo (alternativa correta)
- Eponteiros
Resposta comentada
Gabarito Alternativa D
Conceito-chave: Polimorfismo é a capacidade de um objeto assumir várias formas, ou seja, uma mesma referência pode apontar para objetos de tipos diferentes, e o método executado é decidido em tempo de execução (ex.: Animal a = new Cachorro(); a.emitirSom(); chama o som do cachorro).
- (A) Incorreta: Java passa tipos primitivos por valor (cópia do valor), nunca por referência; a passagem por referência só existe para objetos, mas a referência em si é passada por valor.
- (B) Incorreta: Java não suporta sobrecarga de operadores (como
+para somar objetos); isso é uma característica de C++, por exemplo. - (C) Incorreta: Java não permite herança múltipla de classes (uma classe só pode ter uma superclasse direta); herança múltipla só é possível via interfaces.
- (D) Correta: Polimorfismo é um pilar da linguagem Java, implementado por sobrescrita de métodos (mesma assinatura, comportamento diferente) e interfaces, permitindo que um mesmo código trate objetos de classes distintas de forma genérica.
- (E) Incorreta: Java não possui ponteiros como em C/C++; o acesso a objetos é feito por referências seguras, sem aritmética de endereços.
Armadilha da banca: A alternativa (B) sobrecarga de operadores é a mais tentadora, pois muitos confundem "sobrecarga de métodos" (que Java suporta) com "sobrecarga de operadores" (que Java não suporta). A banca explora exatamente essa confusão de nomenclatura.
Fonte: CESGRANRIO BASA 01/2018 Técnico Científico - Área de Formação: Tecnologia da Informação. Reproduzida para fins de estudo.