A Factory Pattern or Factory Method Pattern says that just define an interface or abstract class for creating an object but let the subclasses decide which class to instantiate . In other words, subclasses are responsible to create the instance of the class.