@Documented @Retention(value=RUNTIME) @Target(value=TYPE) @Inherited public @interface UsesObjectEquals
equals(Object), and therefore
a.equals(b) and a == b behave identically.
A class may be annotated @UsesObjectEquals if neither it, nor any of its supertypes or
subtypes, overrides equals. Therefore, it cannot be written on Object itself. It
is most commonly written on a direct subclass of Object.
InterningChecker