Annotation Interface DefaultComponent


@Retention(RUNTIME) @Target(METHOD) public @interface DefaultComponent
Русский: Указывает что проаннотированная фабрика является предоставляет компонентом для внедрения по умолчанию, будет использован если другой такой же тип с таким же Tag не найдет в графе зависимостей контейнера. Является Singleton, то есть дает гарантию, что у класса будет всего один экземпляр класса.
English: Indicates that the annotated factory provides the default component for injection, will be used if another component of the same type with the same Tag is not found in the container's dependency graph. Is Singleton, that is, it provides a guarantee that the class will have only one instance of the class.

Пример / Example:
  
  public interface MyModule {

     @DefaultComponent
     default Supplier<String> strSupplier() {
         return () -> "1";
     }
 }