En konstruktor returnerer altid en helt ny instans af dens præcise klasse, med et navn der er fastlagt til klassen. En factory method er en regulær (ofte statisk) metode, der opretter objekter — hvilket giver dig frihed over navngivning, hvilken undertype der skal returneres, og hvorvidt der overhovedet skal oprettes et nyt objekt.
