org.springframework.beans.factory.support

## Class CglibSubclassingInstantiationStrategy

- java.lang.Object
- - org.springframework.beans.factory.support.SimpleInstantiationStrategy
  - - org.springframework.beans.factory.support.CglibSubclassingInstantiationStrategy

- All Implemented Interfaces:
    InstantiationStrategy

      public class CglibSubclassingInstantiationStrategy
      extends SimpleInstantiationStrategy

  Default object instantiation strategy for use in BeanFactories.

  Uses CGLIB to generate subclasses dynamically if methods need to be overridden by the container to implement Method Injection.

  Since:
    1.1
  Author:
    Rod Johnson, Juergen Hoeller, Sam Brannen

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `CglibSubclassingInstantiationStrategy()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected Object` | `instantiateWithMethodInjection(RootBeanDefinition beanDefinition, String beanName, BeanFactory owner)` Subclasses can override this method, which is implemented to throw UnsupportedOperationException, if they can instantiate an object with the Method Injection specified in the given RootBeanDefinition.
    `protected Object` | `instantiateWithMethodInjection(RootBeanDefinition beanDefinition, String beanName, BeanFactory owner, Constructor<?> ctor, Object[] args)` Subclasses can override this method, which is implemented to throw UnsupportedOperationException, if they can instantiate an object with the Method Injection specified in the given RootBeanDefinition.

    - ### Methods inherited from class org.springframework.beans.factory.support.SimpleInstantiationStrategy

      `getCurrentlyInvokedFactoryMethod, instantiate, instantiate, instantiate`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- - ### Constructor Detail

    - #### CglibSubclassingInstantiationStrategy

          public CglibSubclassingInstantiationStrategy()

  - ### Method Detail

    - #### instantiateWithMethodInjection

          protected Object instantiateWithMethodInjection(RootBeanDefinition beanDefinition,
                                                          String beanName,
                                                          BeanFactory owner)

      Description copied from class: `SimpleInstantiationStrategy`
      Subclasses can override this method, which is implemented to throw UnsupportedOperationException, if they can instantiate an object with the Method Injection specified in the given RootBeanDefinition. Instantiation should use a no-arg constructor.
      Overrides:
        `instantiateWithMethodInjection` in class `SimpleInstantiationStrategy`

    - #### instantiateWithMethodInjection

          protected Object instantiateWithMethodInjection(RootBeanDefinition beanDefinition,
                                                          String beanName,
                                                          BeanFactory owner,
                                                          Constructor<?> ctor,
                                                          Object[] args)

      Description copied from class: `SimpleInstantiationStrategy`
      Subclasses can override this method, which is implemented to throw UnsupportedOperationException, if they can instantiate an object with the Method Injection specified in the given RootBeanDefinition. Instantiation should use the given constructor and parameters.
      Overrides:
        `instantiateWithMethodInjection` in class `SimpleInstantiationStrategy`