Das Singleton-Muster implementieren
Deine Anwendung muss Protokollierungskonfigurationen über mehrere Komponenten hinweg verwalten. Derzeit erstellt jede Komponente ihren eigenen LogManager, was zu inkonsistenten Konfigurationen führt. Du sollst die Implementierung des Singleton-Musters fertigstellen, damit alle Komponenten dieselbe Protokollierungskonfiguration teilen.
Diese Übung ist Teil des Kurses
<Kurs>Codeoptimierung in Java</Kurs>Übungsanweisungen
- Füge eine
static-Variable namensinstancevom TypLogManagerhinzu. - Mache den Konstruktor nur innerhalb der Klasse zugänglich.
- Erzeuge eine
LogManager-Instanz nur, wenn sie derzeit null ist.
Interaktive praktische Übung
Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.
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;
}
}