BaşlayınÜcretsiz başlayın

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

Kursa Göz Atın

Egzersiz talimatları

  • LogManager türünde instance adlı bir static değ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;
    }
}
Kodu Düzenle ve Çalıştır