Un costruttore restituisce sempre una nuova istanza della sua classe esatta, con un nome fisso alla classe. Un factory method è un metodo regolare (spesso statico) che crea oggetti — dandoti libertà sul naming, quale sottotipo restituire, e se creare un nuovo oggetto oppure no.
