@Override public boolean equals(Object o){
  if (o == this)   return true;
  if (o == null)   return false;
  if (o.getClass() != getClass())   return false;
  return _class == ((NamedType)o)._class;
}

@ Override public boolean equals ( Object o ) { if ( o == this ) return true ; if ( o == null ) return false ; if ( o . getClass ( ) != getClass ( ) ) return false ; return _class == ( ( NamedType ) o ) . _class ; }
equality is defined based on class only , not on name
