Um certo padrão de projeto (design pattern) de criação utiliza métodos para criar objetos sem que o chamador precise especificar a classe exata desses objetos, e sem invocar seu construtor diretamente. O método que define a classe a ser instanciada pode estar especificado em uma interface e ser codificado em classes que a implementam, ou então ser implementado em uma classe base e opcionalmente redefinido (overriden) em uma classe filha. Esse padrão de projeto é conhecido como
A) Bridge.
B) Singleton.
C) Factory Method.
D) Template Method.
E) Visitor.