Design Pattern - Factory Pattern
The factory pattern is a very popular design pattern in Java. This type of design pattern is classified as a creational pattern since it demonstrates one of the most effective methods for creating an object.
We build objects using the Factory pattern without disclosing the creation code to the client and then refer to the newly produced objects via a common interface.