Sobes.tech
Junior — Middle

Singleton паттернин жайгаштыруу үчүн ленив баштоо кандай ишке ашырылат?

sobes.tech AI

AIден жооп

Java-da kechikib boshlanishi Singleton, sinfning nusxasini faqat birinchi murojaatdan keyin yaratishga imkon beradi, bu resurslarni tejashga yordam beradi. Eng keng tarqalgan usullardan biri, ichki statik sinfni ishlatish:

public class Singleton {
    private Singleton() {
        // maxfiy konstruktor
    }

    private static class Holder {
        private static final Singleton INSTANCE = new Singleton();
    }

    public static Singleton getInstance() {
        return Holder.INSTANCE;
    }
}

Bu yerda, Holder sinfi faqat getInstance() birinchi chaqirilganda yuklanadi va boshlanadi, bu esa oqimlararo xavfsizlik va kechikib boshlashni ta'minlaydi.