Questão de Engenharia de Software — Orientação a Objetos — FCC 2021
Engenharia de Software›Orientação a Objetos
Código
fc060185
Banca
FCC
Órgão
MANAUSPREV
Ano
2021
Cargo
Analista Previdenciário - Tecnologia da Informação
Em uma aplicação desenvolvida em uma linguagem orientada a objetos, existe uma classe chamada Aposentado com diversos atributos, dentre eles cpf, nome, pis etc. Os objetos manipulados por meio desta classe conterão dados que serão, via conexão de dados, enviados para uma tabela de um banco de dados que terá campos referentes aos atributos da classe Aposentado. Para que a classe Aposentado permita a manipulação dos dados com adequado encapsulamento, os atributos e os métodos setter e getter deverão ser, respectivamente,
Aestáticos e protegidos.
Bprotegidos e privados.
Cprivados e públicos.
Dprotegidos e estáticos.
Epúblicos e privados.
Revelar gabarito e comentário▾
GabaritoC — privados e públicos.
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”.
Encapsulamento em Orientação a Objetos
Gabarito: letra C. Para garantir o encapsulamento adequado, os atributos de uma classe devem ser declarados como privados (private) e os métodos setter e getter como públicos (public). Isso permite controlar o acesso aos dados e ocultar a implementação interna, princípio fundamental da orientação a objetos.
A banca testa o conhecimento de modificadores de acesso e sua aplicação no encapsulamento. Atributos privados só podem ser acessados pela própria classe, enquanto métodos públicos (setters e getters) fornecem uma interface controlada para leitura e modificação.
Encapsulamento (OOP)
1Atributos
Públicos (expõem dados)
Protegidos (acesso por subclasses)
Privados (ocultam implementação)
2Métodos setter/getter
Privados (sem acesso externo)
Protegidos (acesso limitado)
Públicos (interface controlada)
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Atributos estáticos (static) pertencem à classe, não à instância, e não são adequados para encapsular dados de objetos individuais. Métodos protegidos (protected) permitem acesso a subclasses, o que quebra o encapsulamento total.
Alternativa B — ❌ Incorreta
Atributos protegidos (protected) permitem acesso direto por subclasses, violando o princípio do encapsulamento. Métodos privados (private) tornariam setter e getter inacessíveis para outras classes, impedindo a interação externa.
Alternativa C — ✅ Correta ⟵ GABARITO
Atributos privados (private) e métodos públicos (public). Essa é a prática padrão de encapsulamento: esconder os dados e expor operações seguras por meio de métodos públicos.
Alternativa D — ❌ Incorreta
Atributos protegidos (protected) novamente quebram o encapsulamento. Métodos estáticos (static) são desnecessários e não se aplicam a getters e setters de instância.
Alternativa E — ❌ Incorreta
Atributos públicos (public) expõem diretamente os dados, anulando qualquer encapsulamento. Métodos privados (private) impossibilitariam o acesso externo.
PEGA ESSA DICA!
Em qualquer questão de OOP, lembre-se: encapsulamento = atributos private, métodos de acesso public. Essa é a regra de ouro.