Sobes.tech
Junior — Middle

Маслиҳат медиҳед, ки намунаи татбиқи Singleton-ро дар код нишон диҳед?

sobes.tech AI

Ҷавоб аз AI

Қаидати Singleton кафолат медиҳад, ки дар класа танҳо як намуна вуҷуд дошта бошад ва ба он тавассути нуқтаи дастрасии глобалӣ дастрасӣ пайдо кунад.

Масали татбиқи Singleton дар Android (Java):

public class Singleton {
    private static Singleton instance;

    private Singleton() {
        // конструктори хусусӣ барои пешгирӣ аз эҷоди намунаҳо аз берун
    }

    public static synchronized Singleton getInstance() {
        if (instance == null) {
            instance = new Singleton();
        }
        return instance;
    }
}

Дар ин ҷо, усули getInstance() объектро дар аввалин даъват месозад ва дар даъватҳои оянда бармегардонад. Калидвожа synchronized бехатариро дар муҳити бисёрсӯзиш таъмин мекунад.