## Uses of Class
com.fasterxml.jackson.databind.type.ClassKey

Packages that use ClassKey
Package | Description
--- | ---
com.fasterxml.jackson.databind.deser | Contains implementation classes of deserialization part of data binding.
com.fasterxml.jackson.databind.introspect | Functionality needed for Bean introspection, required for detecting accessors and mutators for Beans, as well as locating and handling method annotations.
com.fasterxml.jackson.databind.module | Package that contains classes and interfaces to help implement custom extension `Module`s (which are registered using `ObjectMapper.registerModule(com.fasterxml.jackson.databind.Module)`.
com.fasterxml.jackson.databind.type | Package that contains concrete implementations of `JavaType`, as well as the factory (`TypeFactory`) for constructing instances from various input data types (like `Class`, `Type`) and programmatically (for structured types, arrays, `List`s and `Map`s).
com.fasterxml.jackson.databind.util | Utility classes for Mapper package.

### Uses of ClassKey in com.fasterxml.jackson.databind.deser

Fields in com.fasterxml.jackson.databind.deser with type parameters of type ClassKey
Modifier and Type | Field and Description
--- | ---
`protected HashMap<ClassKey,JsonDeserializer<Object>>` | BeanDeserializerBase.`_subDeserializers` Lazily constructed map used to contain deserializers needed for polymorphic subtypes.

### Uses of ClassKey in com.fasterxml.jackson.databind.introspect

Fields in com.fasterxml.jackson.databind.introspect with type parameters of type ClassKey
Modifier and Type | Field and Description
--- | ---
`protected Map<ClassKey,Class<?>>` | SimpleMixInResolver.`_localMixIns` Simple mix-in targets defined locally.

Constructor parameters in com.fasterxml.jackson.databind.introspect with type arguments of type ClassKey
Constructor and Description
`SimpleMixInResolver(ClassIntrospector.MixInResolver overrides, Map<ClassKey,Class<?>> mixins)`

### Uses of ClassKey in com.fasterxml.jackson.databind.module

Fields in com.fasterxml.jackson.databind.module with type parameters of type ClassKey
Modifier and Type | Field and Description
--- | ---
`protected HashMap<ClassKey,ValueInstantiator>` | SimpleValueInstantiators.`_classMappings` Mappings from raw (type-erased, i.e.
`protected HashMap<ClassKey,JsonSerializer<?>>` | SimpleSerializers.`_classMappings` Class-based mappings that are used both for exact and sub-class matches.
`protected HashMap<ClassKey,KeyDeserializer>` | SimpleKeyDeserializers.`_classMappings`
`protected HashMap<ClassKey,JsonDeserializer<?>>` | SimpleDeserializers.`_classMappings`
`protected HashMap<ClassKey,JsonSerializer<?>>` | SimpleSerializers.`_interfaceMappings` Interface-based matches.
`protected HashMap<ClassKey,Class<?>>` | SimpleAbstractTypeResolver.`_mappings` Mappings from super types to subtypes

Methods in com.fasterxml.jackson.databind.module with parameters of type ClassKey
Modifier and Type | Method and Description
--- | ---
`protected JsonSerializer<?>` | SimpleSerializers.`_findInterfaceMapping(Class<?> cls, ClassKey key)`

### Uses of ClassKey in com.fasterxml.jackson.databind.type

Fields in com.fasterxml.jackson.databind.type with type parameters of type ClassKey
Modifier and Type | Field and Description
--- | ---
`protected LRUMap<ClassKey,JavaType>` | TypeFactory.`_typeCache` Since type resolution can be expensive (specifically when resolving actual generic types), we will use small cache to avoid repetitive resolution of core types

Methods in com.fasterxml.jackson.databind.type with parameters of type ClassKey
Modifier and Type | Method and Description
--- | ---
`int` | ClassKey.`compareTo(ClassKey other)`

### Uses of ClassKey in com.fasterxml.jackson.databind.util

Fields in com.fasterxml.jackson.databind.util with type parameters of type ClassKey
Modifier and Type | Field and Description
--- | ---
`protected LRUMap<ClassKey,PropertyName>` | RootNameLookup.`_rootNames` For efficient operation, let's try to minimize number of times we need to introspect root element name to use.