En konstruktor returnerar alltid en helt ny instans av sin exakta klass, med ett namn som är fast till klassen. En factory method är en vanlig (ofta statisk) metod som skapar objekt — vilket ger dig frihet över namngivning, vilken subtyp som ska returneras och huruvida ett nytt objekt skapas över huvud taget.
