Alternativa D - private
A questão aborda os princípios de Encapsulamento na Programação Orientada a Objetos (POO), especificamente sobre como controlar a visibilidade de membros de uma classe. O modificador de acesso ideal depende exclusivamente de quem deve ter permissão para utilizar o recurso.
Quando um método é descrito como "auxiliar" e é utilizado "somente por métodos da própria classe", ele representa uma funcionalidade interna que não precisa ser exposta ao exterior.
Análise dos Modificadores
Para entender por que a alternativa correta é a private, vamos analisar o escopo de cada modificador listado:
- private: Restringe o acesso apenas ao interior da mesma classe. É o mais restritivo e garante que outros objetos ou classes não possam acessar diretamente esse método.
- protected: Permite acesso dentro da mesma classe, do mesmo pacote e das subclasses. Seria excessivo se o método não precisasse ser herdado.
- default (ou package-private): Permite acesso apenas dentro do mesmo pacote. Ainda expõe o método a outras classes do pacote, o que viola o princípio de ocultar detalhes internos desnecessários.
- public: Permite acesso de qualquer lugar. Isso quebraria a segurança dos dados e a coesão do código, expondo lógica interna que deveria permanecer oculta.
Conclusão
A escolha private é a melhor prática de design porque minimiza o acoplamento entre classes e protege a integridade dos dados, permitindo que apenas o próprio objeto manipule sua lógica interna.
Portanto, a alternativa correta é a D.