I have a method with the following signature:
// Converts a json string to a list of objects
// Assumption: json is an array, and all items in the list are o
The only way I know of to guarantee to have access to the type at run time is to make it a parameter to the object constructor thus:
class MyClass {
private final Class clazz;
public MyClass(Class clazz) {
this.clazz=clazz;
}
}
You then have to pass the class when you instantiate the object:
MyClass object = new MyClass(String.class);
Obviously, in your case, you have what is effectively a static utility method and no object, so I think you're stuck with either the Class parameter or else some kind of template object.