title: Meaning of <T, U extends T> in java function declaration
body: <p>I am seeing this:</p>
  
  <pre><code>public static &lt;T,U extends T&gt; AutoBean&lt;T&gt; getAutoBean(U delegate)
  </code></pre>
  
  <p>I know the input class is of U type and AutoBean class is of T type and U extends T is the boundary. But what does <code>&lt;T,</code> mean here?</p>
  
  <p>Also, if I am going to write a function to accept the output of getAutoBean, how would you write the function declaration? (i.e. myFunction(getAutoBean(...)), what will the function declaration of myFunction() be?)</p>
  
  <p>Thank you!</p>