title: Why is there @interface above @implementation?
body: <p>I am wondering why there is twice <code>@interface</code>. One in <code>class.h</code> and other in <code>class.m</code>. For example:</p>
  
  <p><code>TestTableViewController.h</code>:</p>
  
  <pre><code>#import &lt;UIKit/UIKit.h&gt;
  
  @interface TestTableViewController : UITableViewController
  
  @end
  </code></pre>
  
  <p>and (automatically generated) <code>class.m</code> i find:</p>
  
  <pre><code>#import "TestTableViewController.h"
  
  @interface TestTableViewController ()
  
  @end
  
  @implementation TestTableViewController
  
  ... methods delegated from UITable delegates
  
  @end
  </code></pre>
  
  <p>So my question is, what the <code>@interface TestTableViewController ()</code> in the <code>.m</code> file is about. Why it is there? Do I need it?</p>
  
  <p>Thanks in advance</p>