Class ClassKey

java.lang.Object
org.codehaus.jackson.map.type.ClassKey
All Implemented Interfaces:
Comparable<ClassKey>

public final class ClassKey extends Object implements Comparable<ClassKey>
Key class, used as an efficient and accurate key for locating per-class values, such as JsonSerializers.

The reason for having a separate key class instead of directly using Class as key is mostly to allow for redefining hashCode method -- for some strange reason, Class does not redefine Object.hashCode() and thus uses identity hash, which is pretty slow. This makes key access using Class unnecessarily slow.

Note: since class is not strictly immutable, caller must know what it is doing, if changing field values.