TL/DR -- In Java, I'm struggling to understand how to create an object instance of a generic type without first knowing the type.