Junior — Middle
როგორ განვახორციელოთ Singleton ნიმუშის მელანქოლური ინიციალიზაცია?
sobes.tech AI
პასუხი AI-სგან
Java-да Lazy Initialization Singleton, sinfнең үрнәген генә беренче мөрәҗәгатьтә булдыра, бу ресурсларны экономияли. Иң киң таралган ысулларның берсе — эчке статик класс куллану:
public class Singleton {
private Singleton() {
// шәхси конструктор
}
private static class Holder {
private static final Singleton INSTANCE = new Singleton();
}
public static Singleton getInstance() {
return Holder.INSTANCE;
}
}
Монда, Holder классы гына getInstance() беренче чакырылышында йөкләнә һәм башлана, бу күп агымлы мохиттә куркынычсызлык һәм ленив башлануны тәэмин итә, синхронлаштырусыз.