Menerapkan pola Singleton
Aplikasi Anda perlu mengelola konfigurasi logging di berbagai komponen. Setiap komponen saat ini membuat LogManager-nya sendiri, sehingga konfigurasi menjadi tidak konsisten. Anda perlu menyelesaikan penerapan pola singleton agar semua komponen berbagi konfigurasi logging yang sama.
Latihan ini adalah bagian dari kursus
Optimasi Kode di Java
Petunjuk latihan
- Tambahkan variabel
staticbernamainstancedengan tipeLogManager. - Jadikan konstruktor hanya dapat diakses dari dalam kelas.
- Hanya buat instance
LogManagerjika saat ini bernilai null.
Latihan interaktif praktis
Cobalah latihan ini dengan menyelesaikan kode contoh berikut.
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;
}
}