# 程序包org.springframework.beans.factory.support的分层结构

程序包分层结构:

- 所有程序包

## 类分层结构

- java.lang.Object
  - org.springframework.beans.factory.support.AbstractBeanDefinitionReader (implements org.springframework.beans.factory.support.BeanDefinitionReader, org.springframework.core.env.EnvironmentCapable)
    - org.springframework.beans.factory.support.PropertiesBeanDefinitionReader
  - java.util.AbstractCollection<E> (implements java.util.Collection<E>)
    - java.util.AbstractList<E> (implements java.util.List<E>)
      - java.util.ArrayList<E> (implements java.lang.Cloneable, java.util.List<E>, java.util.RandomAccess, java.io.Serializable)
        - org.springframework.beans.factory.support.ManagedList<E> (implements org.springframework.beans.BeanMetadataElement, org.springframework.beans.Mergeable)
          - org.springframework.beans.factory.support.ManagedArray
    - java.util.AbstractSet<E> (implements java.util.Set<E>)
      - java.util.HashSet<E> (implements java.lang.Cloneable, java.io.Serializable, java.util.Set<E>)
        - java.util.LinkedHashSet<E> (implements java.lang.Cloneable, java.io.Serializable, java.util.Set<E>)
          - org.springframework.beans.factory.support.ManagedSet<E> (implements org.springframework.beans.BeanMetadataElement, org.springframework.beans.Mergeable)
  - java.util.AbstractMap<K,V> (implements java.util.Map<K,V>)
    - java.util.HashMap<K,V> (implements java.lang.Cloneable, java.util.Map<K,V>, java.io.Serializable)
      - java.util.LinkedHashMap<K,V> (implements java.util.Map<K,V>)
        - org.springframework.beans.factory.support.ManagedMap<K,V> (implements org.springframework.beans.BeanMetadataElement, org.springframework.beans.Mergeable)
  - org.springframework.core.AttributeAccessorSupport (implements org.springframework.core.AttributeAccessor, java.io.Serializable)
    - org.springframework.beans.BeanMetadataAttributeAccessor (implements org.springframework.beans.BeanMetadataElement)
      - org.springframework.beans.factory.support.AbstractBeanDefinition (implements org.springframework.beans.factory.config.BeanDefinition, java.lang.Cloneable)
        - org.springframework.beans.factory.support.ChildBeanDefinition
        - org.springframework.beans.factory.support.GenericBeanDefinition
        - org.springframework.beans.factory.support.RootBeanDefinition
      - org.springframework.beans.factory.support.AutowireCandidateQualifier
  - org.springframework.beans.factory.support.BeanDefinitionBuilder
  - org.springframework.beans.factory.support.BeanDefinitionDefaults
  - org.springframework.beans.factory.support.BeanDefinitionReaderUtils
  - org.springframework.beans.factory.support.DefaultBeanNameGenerator (implements org.springframework.beans.factory.support.BeanNameGenerator)
  - java.util.Dictionary<K,V>
    - java.util.Hashtable<K,V> (implements java.lang.Cloneable, java.util.Map<K,V>, java.io.Serializable)
      - java.util.Properties
        - org.springframework.beans.factory.support.ManagedProperties (implements org.springframework.beans.BeanMetadataElement, org.springframework.beans.Mergeable)
  - org.springframework.beans.factory.support.MethodOverride (implements org.springframework.beans.BeanMetadataElement)
    - org.springframework.beans.factory.support.LookupOverride
    - org.springframework.beans.factory.support.ReplaceOverride
  - org.springframework.beans.factory.support.MethodOverrides
  - org.springframework.core.SimpleAliasRegistry (implements org.springframework.core.AliasRegistry)
    - org.springframework.beans.factory.support.DefaultSingletonBeanRegistry (implements org.springframework.beans.factory.config.SingletonBeanRegistry)
      - org.springframework.beans.factory.support.FactoryBeanRegistrySupport
        - org.springframework.beans.factory.support.AbstractBeanFactory (implements org.springframework.beans.factory.config.ConfigurableBeanFactory)
          - org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory (implements org.springframework.beans.factory.config.AutowireCapableBeanFactory)
            - org.springframework.beans.factory.support.DefaultListableBeanFactory (implements org.springframework.beans.factory.support.BeanDefinitionRegistry, org.springframework.beans.factory.config.ConfigurableListableBeanFactory, java.io.Serializable)
    - org.springframework.beans.factory.support.SimpleBeanDefinitionRegistry (implements org.springframework.beans.factory.support.BeanDefinitionRegistry)
  - org.springframework.beans.factory.support.SimpleAutowireCandidateResolver (implements org.springframework.beans.factory.support.AutowireCandidateResolver)
    - org.springframework.beans.factory.support.GenericTypeAwareAutowireCandidateResolver (implements org.springframework.beans.factory.BeanFactoryAware)
  - org.springframework.beans.factory.support.SimpleInstantiationStrategy (implements org.springframework.beans.factory.support.InstantiationStrategy)
    - org.springframework.beans.factory.support.CglibSubclassingInstantiationStrategy
  - org.springframework.beans.factory.support.SimpleSecurityContextProvider (implements org.springframework.beans.factory.support.SecurityContextProvider)
  - org.springframework.beans.factory.support.StaticListableBeanFactory (implements org.springframework.beans.factory.ListableBeanFactory)
  - java.lang.Throwable (implements java.io.Serializable)
    - java.lang.Exception
      - java.lang.RuntimeException
        - org.springframework.core.NestedRuntimeException
          - org.springframework.beans.BeansException
            - org.springframework.beans.FatalBeanException
              - org.springframework.beans.factory.support.BeanDefinitionValidationException

## 接口分层结构

- org.springframework.core.AliasRegistry
  - org.springframework.beans.factory.support.BeanDefinitionRegistry
- org.springframework.beans.factory.support.AutowireCandidateResolver
- org.springframework.beans.factory.support.BeanDefinitionReader
- org.springframework.beans.factory.config.BeanFactoryPostProcessor
  - org.springframework.beans.factory.support.BeanDefinitionRegistryPostProcessor
- org.springframework.beans.factory.support.BeanNameGenerator
- org.springframework.beans.factory.config.BeanPostProcessor
  - org.springframework.beans.factory.support.MergedBeanDefinitionPostProcessor
- org.springframework.beans.factory.support.InstantiationStrategy
- org.springframework.beans.factory.support.MethodReplacer
- org.springframework.beans.factory.support.SecurityContextProvider