Для чего на самом деле используется @inject?
==============================================

 Ясно, что декоратор позволяет инжектирововать зависимости в существующий класс. Это могут быть классы или отдельные примитивы.  

  

Но зачем писать @Inject если ангуляр позволяет опустить это ключевое слово?  

  

В каких случаях использовать @Inject - можно хорошие пример, когда это к слову? 

 Чтобы взять из инжектора сущности у которых токен не является конструктором класса, а является, например, строкой или объектом типа InjectionToken.  

  

Как примеры - `LOCAL_ID`, `DOCUMENT`, `MAT_DIALOG_DATA` и т.п..  

@Inject всегда присуствует, просто у экземпляров класса, где совпадает токен и его тип, этот декоратор можно опускать.