title: Generics: Inheriting from an abstract class that implements an interface
body: <p>I have the following interface:</p>
  
  <pre><code>public interface SingleRecordInterface&lt;T&gt; {
      public void insert(T object);
  }
  </code></pre>
  
  <p>I have the abstract class below (that does not mention the method insert):</p>
  
  <pre><code>public abstract class AbstractEntry implements SingleRecordInterface&lt;AbstractEntryBean&gt; {
  }
  </code></pre>
  
  <p>I have the concrete class:</p>
  
  <pre><code>public class SpecificEntry extends AbstractEntry {
      public void insert(SpecificEntryBean entry) {
          // stuff
      }
  }
  </code></pre>
  
  <p>Finally, SpecificEntryBean is defined as:</p>
  
  <pre><code>public class SpecificEntryBean extends AbstractEntryBean {
  }
  </code></pre>
  
  <p>I have the following error:</p>
  
  <blockquote>
    <p>The type SpecificEntry must implement the inherited abstract method SingleRecordInterface.insert(AbstractEntryBean)</p>
  </blockquote>
  
  <p>I don't understand the reason for this error, given that SpecificEntryBean extends AbstractEntryBean. How do I fix this error?</p>