anchor.diff:  +makeExample('cb-dependency-injection/ts/src/app/hero-of-the-month.component.ts','use-class')(format='.')   
   :marked
     The first provider is the *de-sugared*, expanded form of the most typical case in which the
  -  class to be created (`HeroService`) is also the provider's dependencyinjection token. 
  +  class to be created (`HeroService`) is also the provider's dependency injection token. 
     It's in this long form to de-mystify the preferred short form.
     
     第一个提供商是*展开了语法糖的*，是一个典型情况的展开。一般来说，被新建的类(`HeroService`)同时也是该提供商的注入令牌。
  
positive.code:   it doesn't have to be the same type as the returned object.
    That's the subject of the next section. 
    
    但令牌不一定都是类，就算它是一个类，它也不一定都返回类型相同的对象。这是下一节的主题。<a id="class-interface"></a>:marked
    
    ### class-interface
    
  
negative.code:   在前面的*每月英雄*的例子中，我们用了`MinimalLogger`类作为`LoggerService` 提供商的令牌。
  
  +makeExample('cb-dependency-injection/ts/src/app/hero-of-the-month.component.ts','use-existing')
  
  :marked
    The `MinimalLogger` is an abstract class.
  
  