title: What is difference between Angular2 @Injectable and and non injectable service
body: <p>In <code>angular</code> <code>@injectable</code> annotated class and normal plain typescript, classes are injected as angular service. They both injected and used in same was at the module level and also in the component level</p>
  
  <blockquote>
    <p>What is the difference?</p>
  </blockquote>
  
  <p>At what situation we should use @Injectable class and at what situation we should use a normal class?</p>
  
  <pre><code>providers: [MyResourcesList]
  </code></pre>
  
  <p>Injectable service declaration</p>
  
  <pre><code>@Injectable()
  export class WidgetResourcesList { }
  </code></pre>
  
  <p>normal typescript service declaration</p>
  
  <pre><code>export class WidgetResourcesList { }
  </code></pre>