# Uses of Interface
org.springframework.beans.factory.ObjectFactory

Packages that use ObjectFactory
Package
Description
org.springframework.beans.factory
The core package implementing Spring's lightweight Inversion of Control (IoC) container.
org.springframework.beans.factory.config
SPI interfaces and configuration-related convenience classes for bean factories.
org.springframework.beans.factory.support
Classes supporting the `org.springframework.beans.factory` package.

## Uses of ObjectFactory in org.springframework.beans.factory

Subinterfaces of ObjectFactory in org.springframework.beans.factory
Modifier and Type
Interface
Description
`interface`
`ObjectProvider<T>`
A variant of `ObjectFactory` designed specifically for injection points, allowing for programmatic optionality and lenient not-unique handling.

## Uses of ObjectFactory in org.springframework.beans.factory.config

Methods in org.springframework.beans.factory.config that return ObjectFactory
Modifier and Type
Method
Description
`protected ObjectFactory<Object>`
ObjectFactoryCreatingFactoryBean.`createInstance()`
Methods in org.springframework.beans.factory.config with parameters of type ObjectFactory
Modifier and Type
Method
Description
`Object`
Scope.`get(String name, ObjectFactory<?> objectFactory)`
Return the object with the given name from the underlying scope, `creating it` if not found in the underlying storage mechanism.

## Uses of ObjectFactory in org.springframework.beans.factory.support

Methods in org.springframework.beans.factory.support with parameters of type ObjectFactory
Modifier and Type
Method
Description
`protected void`
DefaultSingletonBeanRegistry.`addSingletonFactory(String beanName, ObjectFactory<?> singletonFactory)`
Add the given singleton factory for building the specified singleton if necessary.
`Object`
DefaultSingletonBeanRegistry.`getSingleton(String beanName, ObjectFactory<?> singletonFactory)`
Return the (raw) singleton object registered under the given name, creating and registering a new one if none registered yet.