CommencezCommencez gratuitement

Implémenter le patron Singleton

Votre application doit gérer les configurations de journalisation à travers plusieurs composants. À l'heure actuelle, chaque composant crée son propre LogManager, ce qui entraîne des incohérences de configuration. Vous devez terminer l'implémentation du patron singleton afin que tous les composants partagent la même configuration de journalisation.

Cette activité fait partie du cours

Optimiser le code en Java

Voir le cours

Instructions de l’exercice

  • Ajoutez une variable static nommée instance de type LogManager.
  • Rendez le constructeur accessible uniquement depuis la classe elle‑même.
  • Ne créez une instance de LogManager que si elle est actuellement nulle.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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;
    }
}
Modifier et exécuter le code