Implementando o padrão Singleton
Seu aplicativo precisa gerenciar configurações de logging entre vários componentes. Cada componente atualmente cria seu próprio LogManager, causando inconsistências de configuração. Você precisa concluir a implementação do padrão singleton para garantir que todos os componentes compartilhem a mesma configuração de logging.
Este exercicio faz parte do curso
Otimização de Código em Java
Instruções do exercicio
- Adicione uma variável
staticchamadainstancedo tipoLogManager. - Deixe o construtor acessível apenas dentro da classe.
- Só crie uma instância de
LogManagerse ela estiver nula no momento.
exercicio interativo prático
Tente este exercicio completando este código de exemplo.
public class Main {
public static void main(String[] args) {}
}
class LogManager {
// Add static instance variable to hold the instance
private static ____ ____;
private Map logConfig;
// Make constructor accessible only from within the class
___ LogManager() {
logConfig = new HashMap<>();
}
public static LogManager getInstance() {
// Only create if instance is currently null
if (____ ____ ____) {
instance = new LogManager();
}
return instance;
}
}