title: Why Java does not allow overriding equals(Object) in an Enum?
body: <p>I've noticed that the following snippet...</p>
  
  <pre><code>@Override
  public boolean equals(Object otherObject) {
      ...
  }
  </code></pre>
  
  <p>...is not allowed for an Enum, since the method <code>equals(Object x)</code> is defined as <code>final</code> in <a href="http://download.oracle.com/javase/6/docs/api/java/lang/Enum.html#equals%28java.lang.Object%29" rel="noreferrer"><code>Enum</code></a>. Why is this so? </p>
  
  <p>I cannot think of any use case which would require overriding <code>equals(Object)</code> for Enum. I'm just curious to know the reasoning behind this behavior.</p>