Questão de Programação — Programação Orientada a Objetos — FCC 2019
Programação›Programação Orientada a Objetos
Código
fc057622
Banca
FCC
Órgão
TRF - 3ª REGIÃO
Ano
2019
Cargo
Analista Judiciário - Informática
A Programação Orientada a Objetos - POO tem alguns mecanismos para garantir maior segurança no código. Mais especificamente, nos casos dos atributos de classes, a recomendação é utilizar a visibilidade private para os atributos de uma classe. Assim, considerando que uma classe tenha sido criada com a visibilidade private,
Aatributos e métodos são acessíveis somente dentro das classes que pertençam ao mesmo pacote.
Baqueles que tenham acesso à classe terão acesso também a qualquer membro.
Catributos e métodos são acessíveis dentro da própria classe, das subclasses e das classes que façam parte do mesmo pacote.
Da classe pode ser instanciada por qualquer outra classe.
Eo acesso aos atributos dessa classe deve ser feito somente por operações definidas na mesma classe que contêm os atributos desejados.
Revelar gabarito e comentário▾
GabaritoE — o acesso aos atributos dessa classe deve ser feito somente por operações definidas na mesma classe que contêm os atributos desejados.
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”.
Programação Orientada a Objetos – Modificador de Acesso private
Gabarito: letra E. O modificador private restringe o acesso aos membros (atributos e métodos) exclusivamente à própria classe que os define. Nenhuma outra classe, subclasse ou classe do mesmo pacote pode acessá-los diretamente; o acesso externo só é possível por meio de métodos públicos da própria classe (getters/setters). É o princípio do encapsulamento.
A questão testa a diferença entre os principais modificadores de acesso em POO (comum em Java, C++, C# etc.). A tabela abaixo resume:
Modificador
Acesso pela própria classe
Acesso por subclasse
Acesso por classe do mesmo pacote
Acesso por qualquer classe
private
✅
❌
❌
❌
default (package-private)
✅
❌ (se outro pacote)
✅
❌
protected
✅
✅
✅
❌ (se não for subclasse)
public
✅
✅
✅
✅
NÃO CAIA NESSA!
A banca troca propositalmente os efeitos dos modificadores. As alternativas A, B e C descrevem, respectivamente, o comportamento do modificador default (A), da ausência de restrição public (B) e do protected (C). Candidatos desatentos confundem private com protected ou default. Memorize: private = só a classe dona.
Alternativa A — ❌ Incorreta
Descreve o escopo de visibilidade default (package-private) em Java: membros sem modificador explícito são acessíveis por classes do mesmo pacote. Não é private.
Alternativa B — ❌ Incorreta
Afirma que qualquer um com acesso à classe tem acesso a qualquer membro. Isso só vale para membros public. Em private, mesmo dentro da classe, o acesso é controlado, mas a frase é genérica e errada.
Alternativa C — ❌ Incorreta
Descreve o modificador protected: acesso na própria classe, subclasses e classes do mesmo pacote. Não é private.
Alternativa D — ❌ Incorreta
Fala sobre instanciar a classe, não sobre acesso a atributos. A visibilidade da classe (se é pública ou não) é independente da visibilidade de seus membros. Além disso, uma classe private (inner class) não pode ser instanciada por qualquer outra. Totalmente fora do escopo.
Alternativa E — ✅ Correta ⟵ GABARITO
Literalmente, o acesso a atributos private só pode ser feito por operações (métodos) definidas na mesma classe. É a definição de encapsulamento: esconder os dados e expor apenas o necessário por métodos públicos.