Overview

The abstract factory creates a set of related objects, or dependent objects.  Abstract factories are commonly referred to as super-factories or Factory of factories of related or dependent objects.
Platform of products.
Factory method for each product

Diagram

Components Explained

Code