Implémenter le patron Singleton
Votre application doit gérer les configurations de journalisation à travers plusieurs composants. Chaque composant crée actuellement son propre LogManager, ce qui entraîne des incohérences de configuration. Vous devez terminer l’implémentation du patron Singleton pour que tous les composants partagent la même configuration de journalisation.
Cet exercice fait partie du cours
Optimiser son code en Java
Instructions
- Ajoutez une variable
staticappeléeinstancede typeLogManager. - Rendez le constructeur accessible uniquement depuis la classe.
- Ne créez une instance de
LogManagerque si elle est actuellement null.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
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;
}
}