Instantiate a new bean instance of the given class with the specified autowire strategy. All constants defined in this interface are supported here. Can also be invoked with
AUTOWIRE_NO
in order to just apply before-instantiation callbacks (e.g. for annotation-driven injection).
Does not apply standard {@link BeanPostProcessor BeanPostProcessors}callbacks or perform any further initialization of the bean. This interface offers distinct, fine-grained operations for those purposes, for example {@link #initializeBean}. However, {@link InstantiationAwareBeanPostProcessor}callbacks are applied, if applicable to the construction of the instance.
@param beanClass the class of the bean to instantiate
@param autowireMode by name or type, using the constants in this interface
@param dependencyCheck whether to perform a dependency check for objectreferences in the bean instance (not applicable to autowiring a constructor, thus ignored there)
@return the new bean instance
@throws BeansException if instantiation or wiring failed
@see #AUTOWIRE_NO
@see #AUTOWIRE_BY_NAME
@see #AUTOWIRE_BY_TYPE
@see #AUTOWIRE_CONSTRUCTOR
@see #AUTOWIRE_AUTODETECT
@see #initializeBean
@see #applyBeanPostProcessorsBeforeInitialization
@see #applyBeanPostProcessorsAfterInitialization