AbstractAutoProxyCreator
# createProxy# wrappIfNecessary# shouldSkip#getAdvicesAndAdvisorsForBean
SmartInstantiationAwareBeanPostProcessor
+ predictBeanType+ determineCandidateConstructors+ getEarlyBeanReference
BeanPostProcessor
+ postProcessBeforeIninitialization+ postProcessAfterInitialization
AspectJAwareAdvisorAutoProxyCreator
+ operation1(params):returnType- operation2(params)- operation3()
AnnotationAwareAspectJAutoProxyCreator
AbstractAdvisorAutoProxyCreator
# createProxy# wrappIfNecessary# shouldSkip
InstantiationAwareBeanPostProcessor
+ postProcessBeforeInstantiation+ postProcessAfterInstantiation- postProcessProperties