What exactly is a Factory or Factory class?
A Factory is a class that you use to create sets of related objects withoutexplicitly invoking their constructors. You usually use a Factory classwhen you want to delegate resource management or tracking to another object.For example, in a program that supports multiple user interfaces, youdon’t want to have sets of if statements littering your code every time you instantiate a widget. Rather, you delegate the creation of widgetsto a Factory class which instantiates a widget corresponding to the rightuser interface. That is actually what the UIManager class in the SwingSet does. Another example of a Factory in the Swing Set is the BorderFactoryclass which tries to reuse Border instances to conserve resources.