Create a generic (unknown) instance

Nope, new expects a class name. A class is not a type, it is a blueprint for making objects.