Inversion of Control is a pattern where the controls of dependencies are moved out usually from program components to container. The usual control flow of a program is inverted, and hence it is called so.
For instance, instead of using a new keyword to create an object and setting dependencies, a dependency injection framework (e.g. spring container) will create the object and its dependencies for you at runtime and inject them into your code.
Inversion of control (IoC) is an object oriented programming technique in which object coupling is bound at run time by an assembler object and is typically not known at compile time. This binding process is usually achieved through dependency injection. You can achieve this by designing to interfaces. Read more @ www.javajee.com/inversion-of-control-and-dependency-injection.
This is a personal technical blog where we share our understanding on various concepts and is neither an official page or documentation for the products described here, nor the official views of the companies we work with.
Keywords used in this website are trademarks of their respective owners. This website is not affiliated with Oracle™ and/or any of the JEE frameworks like Spring™, Struts™, Hibernate™ and JSF™.
All contents and materials are provided freely without any warranty or liability and nothing within the site should be considered as professional advice. In any doubt, please ask, and we will try to help you based on our knowledge. Please let us know if you feel anything is not right here (including any copyright violation) and we will act upon it as fast as we can.