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

程序包分层结构:

- 所有程序包

## 类分层结构

- java.lang.Object
  - org.springframework.beans.factory.config.AbstractFactoryBean<T> (implements org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.DisposableBean, org.springframework.beans.factory.FactoryBean<T>, org.springframework.beans.factory.InitializingBean)
    - org.springframework.beans.factory.config.ListFactoryBean
    - org.springframework.beans.factory.config.MapFactoryBean
    - org.springframework.beans.factory.config.ObjectFactoryCreatingFactoryBean
    - org.springframework.beans.factory.config.ProviderCreatingFactoryBean
    - org.springframework.beans.factory.config.SetFactoryBean
  - org.yaml.snakeyaml.constructor.BaseConstructor
    - org.yaml.snakeyaml.constructor.SafeConstructor
      - org.yaml.snakeyaml.constructor.Constructor
        - org.springframework.beans.factory.config.YamlProcessor.StrictMapAppenderConstructor
  - org.springframework.beans.factory.config.BeanDefinitionHolder (implements org.springframework.beans.BeanMetadataElement)
  - org.springframework.beans.factory.config.BeanDefinitionVisitor
  - org.springframework.beans.factory.config.BeanExpressionContext
  - org.springframework.beans.factory.config.ConstructorArgumentValues
  - org.springframework.beans.factory.config.ConstructorArgumentValues.ValueHolder (implements org.springframework.beans.BeanMetadataElement)
  - org.springframework.beans.factory.config.CustomEditorConfigurer (implements org.springframework.beans.factory.config.BeanFactoryPostProcessor, org.springframework.core.Ordered)
  - org.springframework.beans.factory.config.CustomScopeConfigurer (implements org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.config.BeanFactoryPostProcessor, org.springframework.core.Ordered)
  - org.springframework.beans.factory.config.DeprecatedBeanWarner (implements org.springframework.beans.factory.config.BeanFactoryPostProcessor)
  - org.springframework.beans.factory.config.EmbeddedValueResolver (implements org.springframework.util.StringValueResolver)
  - org.springframework.beans.factory.config.FieldRetrievingFactoryBean (implements org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.FactoryBean<T>, org.springframework.beans.factory.InitializingBean)
  - org.springframework.beans.factory.InjectionPoint
    - org.springframework.beans.factory.config.DependencyDescriptor (implements java.io.Serializable)
  - org.springframework.beans.factory.config.InstantiationAwareBeanPostProcessorAdapter (implements org.springframework.beans.factory.config.SmartInstantiationAwareBeanPostProcessor)
  - org.springframework.util.MethodInvoker
    - org.springframework.beans.support.ArgumentConvertingMethodInvoker
      - org.springframework.beans.factory.config.MethodInvokingBean (implements org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.InitializingBean)
        - org.springframework.beans.factory.config.MethodInvokingFactoryBean (implements org.springframework.beans.factory.FactoryBean<T>)
  - org.springframework.beans.factory.config.NamedBeanHolder<T> (implements org.springframework.beans.factory.NamedBean)
  - org.springframework.core.io.support.PropertiesLoaderSupport
    - org.springframework.beans.factory.config.PropertiesFactoryBean (implements org.springframework.beans.factory.FactoryBean<T>, org.springframework.beans.factory.InitializingBean)
    - org.springframework.beans.factory.config.PropertyResourceConfigurer (implements org.springframework.beans.factory.config.BeanFactoryPostProcessor, org.springframework.core.PriorityOrdered)
      - org.springframework.beans.factory.config.PlaceholderConfigurerSupport (implements org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.BeanNameAware)
        - org.springframework.beans.factory.config.PropertyPlaceholderConfigurer
          - org.springframework.beans.factory.config.PreferencesPlaceholderConfigurer (implements org.springframework.beans.factory.InitializingBean)
      - org.springframework.beans.factory.config.PropertyOverrideConfigurer
  - org.springframework.beans.factory.config.PropertyPathFactoryBean (implements org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.FactoryBean<T>)
  - org.springframework.beans.factory.config.RuntimeBeanNameReference (implements org.springframework.beans.factory.config.BeanReference)
  - org.springframework.beans.factory.config.RuntimeBeanReference (implements org.springframework.beans.factory.config.BeanReference)
  - org.springframework.beans.factory.config.ServiceLocatorFactoryBean (implements org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.FactoryBean<T>, org.springframework.beans.factory.InitializingBean)
  - org.springframework.beans.factory.config.TypedStringValue (implements org.springframework.beans.BeanMetadataElement)
  - org.springframework.beans.factory.config.YamlProcessor
    - org.springframework.beans.factory.config.YamlMapFactoryBean (implements org.springframework.beans.factory.FactoryBean<T>, org.springframework.beans.factory.InitializingBean)
    - org.springframework.beans.factory.config.YamlPropertiesFactoryBean (implements org.springframework.beans.factory.FactoryBean<T>, org.springframework.beans.factory.InitializingBean)

## 接口分层结构

- org.springframework.core.AttributeAccessor
  - org.springframework.beans.factory.config.BeanDefinition (并 extends org.springframework.beans.BeanMetadataElement)
- org.springframework.beans.factory.config.BeanDefinitionCustomizer
- org.springframework.beans.factory.config.BeanExpressionResolver
- org.springframework.beans.factory.BeanFactory
  - org.springframework.beans.factory.config.AutowireCapableBeanFactory
    - org.springframework.beans.factory.config.ConfigurableListableBeanFactory (并 extends org.springframework.beans.factory.config.ConfigurableBeanFactory, org.springframework.beans.factory.ListableBeanFactory)
  - org.springframework.beans.factory.HierarchicalBeanFactory
    - org.springframework.beans.factory.config.ConfigurableBeanFactory (并 extends org.springframework.beans.factory.config.SingletonBeanRegistry)
      - org.springframework.beans.factory.config.ConfigurableListableBeanFactory (并 extends org.springframework.beans.factory.config.AutowireCapableBeanFactory, org.springframework.beans.factory.ListableBeanFactory)
  - org.springframework.beans.factory.ListableBeanFactory
    - org.springframework.beans.factory.config.ConfigurableListableBeanFactory (并 extends org.springframework.beans.factory.config.AutowireCapableBeanFactory, org.springframework.beans.factory.config.ConfigurableBeanFactory)
- org.springframework.beans.factory.config.BeanFactoryPostProcessor
- org.springframework.beans.BeanMetadataElement
  - org.springframework.beans.factory.config.BeanDefinition (并 extends org.springframework.core.AttributeAccessor)
  - org.springframework.beans.factory.config.BeanReference
- org.springframework.beans.factory.config.BeanPostProcessor
  - org.springframework.beans.factory.config.DestructionAwareBeanPostProcessor
  - org.springframework.beans.factory.config.InstantiationAwareBeanPostProcessor
    - org.springframework.beans.factory.config.SmartInstantiationAwareBeanPostProcessor
- org.springframework.beans.factory.config.Scope
- org.springframework.beans.factory.config.SingletonBeanRegistry
  - org.springframework.beans.factory.config.ConfigurableBeanFactory (并 extends org.springframework.beans.factory.HierarchicalBeanFactory)
    - org.springframework.beans.factory.config.ConfigurableListableBeanFactory (并 extends org.springframework.beans.factory.config.AutowireCapableBeanFactory, org.springframework.beans.factory.ListableBeanFactory)
- org.springframework.beans.factory.config.YamlProcessor.DocumentMatcher
- org.springframework.beans.factory.config.YamlProcessor.MatchCallback

## 枚举分层结构

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - org.springframework.beans.factory.config.YamlProcessor.ResolutionMethod
    - org.springframework.beans.factory.config.YamlProcessor.MatchStatus