@Override
  public int hashCode() {
    final int prime = 31;
    int result = super.hashCode();
    result = prime * result + (abstractClass ? 1231 : 1237);
    result = prime * result + ((constructor == null) ? 0 : constructor.hashCode());
    result = prime * result + ((events == null) ? 0 : events.hashCode());
    result = prime * result + ((extendsProp == null) ? 0 : extendsProp.hashCode());
    result = prime * result + ((methods == null) ? 0 : methods.hashCode());
    return result;
  }