Alternativa C - Singleton
O enunciado descreve exatamente a implementação clássica do padrão de projeto Singleton.
Objetivo do Padrão:
Garantir que uma classe tenha apenas uma única instância disponível durante a execução do programa e fornecer um ponto de acesso global para ela.
Análise da Descrição:
A estratégia apresentada utiliza os seguintes mecanismos fundamentais:
- Construtor Private: Impede que outras classes criem novas instâncias diretamente usando a palavra-chave
new. Isso bloqueia a criação de múltiplos objetos. - Atributo Static: Armazena a única instância válida dentro da própria classe, mantendo-a acessível sem precisar de uma instância prévia.
- Operação Estática (Método Getter): Permite acessar ou criar a instância sob demanda, garantindo o controle sobre quem pode utilizá-la.
Comparação com as Alternativas:
| Padrão | Foco Principal | Diferença Chave |
|---|
| Singleton | Uma única instância | Restringe instâncias via construtor privado |
| Abstract Factory | Famílias de objetos | Cria produtos relacionados, não limita quantidade |
| Factory Method | Subclasses de instanciação | Define interface de criação, permite várias instâncias |
| Prototype | Clonagem | Cria novos objetos copiando existentes |
| Builder | Construção passo-a-passo | Foca na construção de objetos complexos |
Conclusão:
Como a descrição foca estritamente em controlar a criação para garantir uma única instância através de encapsulamento estático, trata-se inequivocamente do padrão Singleton.