Implementera Singleton-mönstret
Din applikation behöver hantera loggningskonfigurationer i flera komponenter. För närvarande skapar varje komponent sin egen LogManager, vilket leder till inkonsekventa konfigurationer. Du ska slutföra implementeringen av singleton-mönstret så att alla komponenter delar samma loggningskonfiguration.
Den här övningen är en del av kursen
Optimera kod i Java
Övningsinstruktioner
- Lägg till en
static-variabel med namnetinstanceav typenLogManager. - Gör konstruktorn åtkomlig endast inifrån klassen.
- Skapa bara en instans av
LogManagerom den för närvarande är null.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
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;
}
}