title: How can I make this java generic cast?
body: <p>How can I make this java generic cast ?</p>
  
  <pre><code>public interface IField {
  
  }
  
  
  class Field implements IField { // package private class
  
  }
  
  public class Form {
    private List&lt;Field&gt; fields;
  
  
    public List&lt;IField&gt; getFields() {
      return this.fields;
  
    }
  
  }
  </code></pre>
  
  <p>The return statement throws a compiler error (I know the reason - I read the generics tutorial) but it would be very handy to write such code.</p>
  
  <p>If I declared "fields" as List I would need to use a lot of casts to Field in other methods of a Form class .</p>
  
  <p>Can I force that damn compiler to bend it's rules and compile that return statement ?</p>
  
  <p>Thanks in advance.</p>