Sebuah constructor sentiasa memulangkan instance baharu bagi class tepatnya, dengan nama yang terikat kepada class tersebut. Sebuah factory method pula ialah method biasa (selalunya static) yang mencipta objek — memberi anda kebebasan terhadap penamaan, subtype mana yang hendak dipulangkan, dan perlu mencipta objek baharu langsung.
