Pular para o conteúdo principal

Questão de Engenharia de Software — Orientação a Objetos — FGV 2022

Engenharia de SoftwareOrientação a Objetos
Código
fg055269
Banca
FGV
Órgão
TCE-TO
Ano
2022
Nível
Superior
Cargo
Auditor de Controle Externo - Tecnologia da Informação
O sistema de controle automotivo SisAut foi modelado orientado a objetos. O SisAut possui a classe Veículo, que compartilha seu código-fonte com suas subclasses: Carro e Moto. As subclasses Carro e Moto aproveitam os métodos e atributos da classe Veículo.Em orientação a objeto, o mecanismo pelo qual uma classe pode estender outra classe ou ser estendida por outra classe é:
  1. Ainterface;
  2. Bherança;
  3. Cpacotes;
  4. Dagregação;
  5. Eencapsulamento.
Revelar gabarito e comentário

GabaritoB — herança;

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Orientação a Objetos: Mecanismo de Extensão entre Classes

Gabarito: letra B. O mecanismo pelo qual uma classe pode estender outra classe (ou ser estendida) é a herança (inheritance). Herança permite que uma subclasse reutilize e estenda atributos e métodos de uma superclasse. As demais alternativas referem-se a outros conceitos: interface define contrato, pacotes organizam classes, agregação é um tipo de associação, e encapsulamento protege dados.

Alternativa

Conceito

Descrição

Relação com o enunciado

Correta?

A

Interface

Contrato que define métodos a serem implementados, sem fornecer código

Não permite extensão direta de código-fonte

B

Herança

Mecanismo pelo qual uma classe estende outra, herdando atributos e métodos

Permite que Carro e Moto aproveitem código de Veículo

C

Pacotes

Agrupamento lógico de classes para organização

Não define relação de extensão entre classes

D

Agregação

Relacionamento "todo-parte" (has-a)

Não é herança (is-a)

E

Encapsulamento

Princípio de ocultar detalhes internos e expor interfaces

Não é mecanismo de extensão

Alternativa B — ✅ Correta ⟵ GABARITO

A herança é o mecanismo fundamental de reuso e extensão em orientação a objetos. Permite que uma classe (subclasse) herde membros de outra (superclasse), possibilitando a adição ou sobrescrita de comportamentos. No enunciado, Veículo é a superclasse, Carro e Moto são subclasses que "aproveitam os métodos e atributos" por herança.

Alternativa A — ❌ Incorreta

Interface é um contrato que define um conjunto de métodos que uma classe deve implementar, mas não fornece implementação nem permite extensão direta de código. Não é o mecanismo de estender classes, mas de especificar comportamentos.

Alternativa C — ❌ Incorreta

Pacotes (packages) são agrupamentos lógicos de classes para organização e controle de namespace. Não definem relação de herança.

Alternativa D — ❌ Incorreta

Agregação é um tipo de relacionamento "todo-parte", onde uma classe contém referências a outras, mas não há herança de comportamento. Representa um "tem um" (has-a), não um "é um" (is-a).

Alternativa E — ❌ Incorreta

Encapsulamento é o princípio de ocultar detalhes internos de uma classe, expondo apenas interfaces públicas. Não se trata de mecanismo de extensão entre classes.

Gabarito: letra B.

Link permanente: /questoes/fg055269