Generics Collections PECS
<p>I have a question about this method from <code>java.util.Collections</code>:</p>

<pre><code>public class Collections {  
  public static &lt;T&gt; void copy(List&lt;? super T&gt; dest, List&lt;? extends T&gt; src) {  
      for (int i=0; i&lt;src.size();i++)   
        dest.set(i,src.get(i));   
  }   
}
</code></pre>

<p>I understand how <code>&lt;? super T&gt;</code> works, however,  I don't understand why the first parameter is <code>List&lt;? super T&gt;</code> instead of <code>List&lt;T&gt;</code>. I think it's useless in this situation.<br>
Using <code>List&lt;T&gt;</code> should work as well, shouldn't it?<br>
Could you give me some examples to understand it if possible, please?  </p>

<p>Thanks.</p>
