Singleton desenini uygulama
Uygulaman, birden çok bileşen arasında günlükleme (logging) yapılandırmalarını yönetmeli. Şu anda her bileşen kendi LogManager örneğini oluşturuyor ve bu da yapılandırma tutarsızlıklarına yol açıyor. Tüm bileşenlerin aynı günlükleme yapılandırmasını paylaşmasını sağlamak için singleton deseninin uygulamasını tamamlaman gerekiyor.
Bu egzersiz, kursun bir parçasıdır
Java'da Kod Optimizasyonu
Egzersiz talimatları
LogManagertüründeinstanceadlı birstaticdeğişken ekle.- Kurucuyu yalnızca sınıf içinden erişilebilir yap.
- Yalnızca şu anda null ise bir
LogManagerörneği oluştur.
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
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;
}
}