Sobes.tech
Junior — Middle

Каква е основната функция на аннотацията Singleton и къде се използва?

sobes.tech AI

Отговор от AI

Забележка @Singleton в Android (например, при използване на Dagger за внедряване на зависимости) показва, че класът трябва да има единствен екземпляр в рамките на определен компонент или цялото приложение.

Основната функция е да гарантира, че при многократни заявки за предоставяне на зависимост, ще се връща същият обект. Това е полезно за управление на състоянието, спестяване на ресурси и осигуряване на съгласуваност на данните.

Пример за използване с Dagger:

@Singleton
@Component(modules = AppModule.class)
public interface AppComponent {
    MyRepository getRepository();
}

@Singleton
public class MyRepository {
    // ...
}

Тук MyRepository ще бъде създаден веднъж и ще се използва повторно навсякъде, където е необходимо.