title: What is the benefit of this design pattern?
body: <pre><code>interface Base&lt;T extends Base&gt; {
  
      T method();
  }
  </code></pre>
  
  <p>Against this pattern design</p>
  
  <pre><code>interface Base {
  
      Base method();
  }
  </code></pre>
  
  <p>The only, I guess, with <code>method()</code> in <code>Base</code> I can get the specific type.
  Are there more benefits?</p>