title: Error compiling interface implementation
body: <p>I get an error for: <code>a.getLargest(a.create());</code>
  in the main method. It says that</p>
  
  <blockquote>
    <p>I have to implement the method in <code>Geo</code></p>
  </blockquote>
  
  <pre><code>public abstract class Measurable&lt;T&gt; {    
     abstract double getMeasure();
     public static &lt;T extends Measurable&lt;T&gt;&gt; T getLargest(ArrayList&lt;T&gt; objects){
         T largest = objects.get(0);
         for(int i = 0; i &lt; objects.size(); i ++){
             if(largest.getMeasure() == objects.get(i).getMeasure()){
                 largest = objects.get(i);
             }
         }
         return largest;     
     }
  }
  </code></pre>
  
  <p>And in a separate file:</p>
  
  <pre><code>import java.util.ArrayList;
  import java.util.Collection;    
  public class Test extends Measurable {      
      private Geo test;
      private static ArrayList&lt;Geo&gt; object;       
      public Test(){
          test = new Geo();
          object = new ArrayList&lt;Geo&gt;();
      }
  
      public double getMeasure() {
          double size = 0;
          for(int i = 0; i &lt; object.size(); i++){
              size = object.get(i).getArea()*object.get(i).getPerimeter();
          }
          return size;
      }           
  
      public ArrayList&lt;Geo&gt; create(){
              for(int i = 0; i &lt; 10; i++){
                  test = new Geo(i, i);
                  object.add(test);
              }
              return object;
          }
  
          public static void main(String[] args){
              Test a = new Test();
              a.getLargest(a.create());
  
          }
    }
  </code></pre>
  
  <p>And thats the GeoClass</p>
  
  <pre><code>public class GeometricObject extends Measurable&lt;GeometricObject&gt;{
  </code></pre>