# Hierarchy For Package org.springframework.context.annotation

Package Hierarchies:

- All Packages

## Class Hierarchy

- java.lang.Object
  - org.springframework.context.annotation.AdviceModeImportSelector<A> (implements org.springframework.context.annotation.ImportSelector)
  - org.springframework.context.annotation.AnnotatedBeanDefinitionReader
  - org.springframework.context.annotation.AnnotationBeanNameGenerator (implements org.springframework.beans.factory.support.BeanNameGenerator)
  - org.springframework.context.annotation.AnnotationConfigBeanDefinitionParser (implements org.springframework.beans.factory.xml.BeanDefinitionParser)
  - org.springframework.context.annotation.AnnotationConfigUtils
  - org.springframework.context.annotation.AnnotationScopeMetadataResolver (implements org.springframework.context.annotation.ScopeMetadataResolver)
  - 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.GenericBeanDefinition
          - org.springframework.context.annotation.ScannedGenericBeanDefinition (implements org.springframework.beans.factory.annotation.AnnotatedBeanDefinition)
  - org.springframework.context.annotation.AutoProxyRegistrar (implements org.springframework.context.annotation.ImportBeanDefinitionRegistrar)
  - org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider (implements org.springframework.core.env.EnvironmentCapable, org.springframework.context.ResourceLoaderAware)
    - org.springframework.context.annotation.ClassPathBeanDefinitionScanner
  - org.springframework.context.annotation.ComponentScanBeanDefinitionParser (implements org.springframework.beans.factory.xml.BeanDefinitionParser)
  - org.springframework.context.annotation.ConfigurationClassPostProcessor (implements org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.beans.factory.support.BeanDefinitionRegistryPostProcessor, org.springframework.context.EnvironmentAware, org.springframework.context.ResourceLoaderAware)
  - org.springframework.core.io.DefaultResourceLoader (implements org.springframework.core.io.ResourceLoader)
    - org.springframework.context.support.AbstractApplicationContext (implements org.springframework.context.ConfigurableApplicationContext, org.springframework.beans.factory.DisposableBean)
      - org.springframework.context.support.GenericApplicationContext (implements org.springframework.beans.factory.support.BeanDefinitionRegistry)
        - org.springframework.context.annotation.AnnotationConfigApplicationContext
  - org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor (implements org.springframework.beans.factory.config.DestructionAwareBeanPostProcessor, org.springframework.beans.factory.support.MergedBeanDefinitionPostProcessor, org.springframework.core.PriorityOrdered, java.io.Serializable)
    - org.springframework.context.annotation.CommonAnnotationBeanPostProcessor (implements org.springframework.beans.factory.BeanFactoryAware, org.springframework.beans.factory.config.InstantiationAwareBeanPostProcessor, java.io.Serializable)
  - org.springframework.beans.factory.annotation.InjectionMetadata.InjectedElement
    - org.springframework.context.annotation.CommonAnnotationBeanPostProcessor.LookupElement
  - org.springframework.context.annotation.Jsr330ScopeMetadataResolver (implements org.springframework.context.annotation.ScopeMetadataResolver)
  - org.springframework.context.annotation.LoadTimeWeavingConfiguration (implements org.springframework.beans.factory.BeanClassLoaderAware, org.springframework.context.annotation.ImportAware)
  - org.springframework.context.annotation.MBeanExportConfiguration (implements org.springframework.beans.factory.BeanFactoryAware, org.springframework.context.annotation.ImportAware)
  - org.springframework.context.annotation.ScopeMetadata

## Interface Hierarchy

- org.springframework.beans.factory.Aware
  - org.springframework.context.annotation.ImportAware
- org.springframework.context.annotation.ImportBeanDefinitionRegistrar
- org.springframework.context.annotation.ImportSelector
- org.springframework.context.annotation.LoadTimeWeavingConfigurer
- org.springframework.context.annotation.ScopeMetadataResolver

## Annotation Type Hierarchy

- org.springframework.context.annotation.Lazy (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.Profile (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.Import (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.ComponentScan (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.Configuration (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.EnableMBeanExport (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.Bean (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.EnableAspectJAutoProxy (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.Primary (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.PropertySource (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.EnableLoadTimeWeaving (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.DependsOn (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.Scope (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.ComponentScan.Filter (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.Role (implements java.lang.annotation.Annotation)
- org.springframework.context.annotation.ImportResource (implements java.lang.annotation.Annotation)

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - org.springframework.context.annotation.FilterType
    - org.springframework.context.annotation.AdviceMode
    - org.springframework.context.annotation.ScopedProxyMode
    - org.springframework.context.annotation.EnableLoadTimeWeaving.AspectJWeaving