The accepted answer to this question describes how to create an instance of T in the Generic class. This involves passing in a Class<
If you're using the GSON library, you can get the type of T easily by using TypeToken. The class documentation is available here:
I did it like this:
This is my class definition:
public class ManagerGeneric {}
This is in my method:
// Get the type of generic parameter
Type typeOfT = new TypeToken(){}.getType();
// Deserialize
T data = gson.fromJson(json, typeOfT);