Een constructor retourneert altijd een gloednieuw exemplaar van zijn exact class, met een naam die vastgesteld is aan de class. Een factory method is een reguliere (vaak static) methode die objecten creëert — waardoor je vrijheid krijgt over naamgeving, welk subtype je teruggeeft, en of je überhaupt een nieuw object maakt.
