Implementarea pattern-ului Singleton
Aplicația ta trebuie să gestioneze configurațiile de logging în mai multe componente. În prezent, fiecare componentă își creează propriul LogManager, ceea ce duce la inconsistențe în configurare. Trebuie să finalizezi implementarea pattern-ului singleton pentru a te asigura că toate componentele partajează aceeași configurație de logging.
Acest exercițiu face parte din cursul
Optimizarea codului în Java
Instrucțiuni pentru exercițiu
- Adaugă o variabilă
staticnumităinstancede tipulLogManager. - Fă constructorul accesibil doar din interiorul clasei.
- Creează o instanță de
LogManagerdoar dacă aceasta estenullîn momentul apelului.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
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;
}
}