title: what is the difference between ? and T in class and method signatures?
body: <p>why does </p>
  
  <pre><code>public interface ArrayOfONEITEMInterface &lt;T extends ONEITEMInterface&gt;{
      public List&lt;T&gt; getONEITEM();
  }
  </code></pre>
  
  <p>compile, but not</p>
  
  <pre><code>public interface ArrayOfONEITEMInterface &lt;? extends ONEITEMInterface&gt;{
      public List&lt;?&gt; getONEITEM();
  }
  </code></pre>
  
  <p>what is the difference between ? and T in class and method signatures?</p>