title: Java Error - arrayqueue.ArrayQueue is not abstract and does not override abstract method dequeue()
body: <p>I'm having trouble with a java error specifically, this one:  </p>
  
  <p>arrayqueue.ArrayQueue is not abstract and does not override abstract method dequeue() in arrayqueue.Queue at arrayqueue.ArrayQueue.(ArrayQueue.java:11)</p>
  
  <p>Here's the code the error is occurring in:</p>
  
  <pre><code>public class ArrayQueue&lt;E&gt; implements Queue&lt;E&gt; {
  
  E [] Q; 
  int f,r;
  int size;
  
  static final int CAPACITY = 1000; 
  int capacity; 
  
  public ArrayQueue() {
      this(CAPACITY);
  }
  
  public ArrayQueue(int cap){
      capacity = cap;
      Q = (E []) new Object[capacity];
      f = 0;
      r = 0;
      size = 0;
  }
  
  
  
  public static void main(String[] args) {
  
  }
  </code></pre>
  
  <p>}</p>
  
  <p>Line 11 would be this line: <code>public class ArrayQueue&lt;E&gt; implements Queue&lt;E&gt; {</code> Specifically, I don't understand what the <code>&lt;E&gt;</code> in this line means. I'm trying to implement the queue ADT using a circular array. Obviously this implements the Queue interface, which I also don't understand the concept of an interface quite yet (Why can't Java be like Python!?)</p>
  
  <p>For reference, I've also posted the Queue interface below:</p>
  
  <pre><code>public interface Queue&lt;F&gt; {
  
  
  public int size();
  public boolean isEmpty();
  public F front() throws EmptyQueueException;
  public void enqueue(F element);
  public F dequeue() throws EmptyQueueException;
  </code></pre>
  
  <p>}</p>
  
  <p>I know this is about 5 questions in a row, but conceptually, this is confusing to me. I appreciate any help. </p>