title: Dart implements/extends for abstract class
body: <p>For abstract classes is there difference between <code>implements</code> and <code>extends</code>? Which one should I use? In Java for interfaces you would use implements, but I see dart doesn't have interfaces and both implements/extends work. If I want to declare abstract class for my api methods, should I use implements or extends?</p>
  <pre class="lang-dart prettyprint-override"><code>void main() {
    User user = new User();
    user.printName();
  }
  
  abstract class Profile {
    String printName();
  }
  
  class User extends Profile {
    @override
    String printName() {
      print(&quot;I work!!&quot;);
      return &quot;Test&quot;;
    }
  }
  
  </code></pre>