Pular para o conteúdo principal

Questão de Programação — Linguagens de programação — FCPC 2026

ProgramaçãoLinguagens de programação
Código
qg675017
Banca
FCPC
Órgão
UFCA
Ano
2026
Nível
Superior
Cargo
Analista de Tecnologia da Informação / Área: Arquitetura e Desenvolvimento de Sistemas – Back-End
Considere o código Java a seguir:abstract class Documento {public abstract String getTipo();public String descricao() {return "Documento do tipo: " + getTipo();}}class Relatorio extends Documento {@Overridepublic String getTipo() {return "Relatório";}}public class Sistema {public static void main(String[] args) {Documento doc = new Relatorio();System.out.println(doc.descricao());}}Sob a ótica de orientação a objetos em Java, assinale a alternativa correta a respeito do código apresentado.
  1. AA chamada a getTipo() em descricao() utiliza sempre a versão definida em Documento, pois doc é do tipo Documento.
  2. BO método descricao() não pode ser herdado pela classe Relatorio, pois classes abstratas impedem reutilização de métodos concretos.
  3. CO método getTipo() da classe Relatorio representa uma sobrecarga, pois redefine o comportamento declarado na classe abstrata Documento.
  4. DO código demonstra polimorfismo, no qual a implementação do método getTipo() da classe Relatorio é utilizada em tempo de execução, apesar da referência ser do tipo Documento.
Revelar gabarito e comentário

GabaritoD — O código demonstra polimorfismo, no qual a implementação do método getTipo() da classe Relatorio é utilizada em tempo de execução, apesar da referência ser do tipo Documento.

Link permanente: /questoes/qg675017