Они делают две совершенно разные вещи.
Фабрика существует для создания одной или нескольких копий класса.Он или метод, который он предоставляет, может быть предоставлен другому классу, которому нужна зависимость, и зависимый класс может вызвать фабричный метод для получения экземпляра.
Для создания одной и ТОЛЬКО одной копиикласс.Ссылка на класс получается статически, но эта ссылка затем может передаваться как экземпляр, в отличие от чисто статического класса.