title: What is the difference between @Inject and @Injectable in Angular 2 typescript
body: <p>I don't understand When to use @Inject and when to use @Injectable ?</p>
  
  <pre><code>  import {Component, Inject, provide} from '@angular/core';
      import {Hamburger} from '../services/hamburger'; 
      export class App {
         bunType: string;
         constructor(@Inject(Hamburger) h) {
           this.bunType = h.bun.type;
         }
       }
  </code></pre>
  
  <p>And..</p>
  
  <pre><code>  import {Injectable} from '@angular/core';
      import {Bun} from './bun';
      @Injectable()
      export class Hamburger {
        constructor(public bun: Bun) {
        }
      }
  </code></pre>