На языке, где оба доступны, вы бы предпочли видеть конструктор экземпляра или статический метод, который возвращает экземпляр?
Например, если вы создаете String из char[]:
String
char[]
String.FromCharacters(chars);
new String(chars);
Конечно, есть несколько преимуществ статических фабричных методов перед конструкторами.
getInstance()