Java by API/java.lang.reflect/ParameterizedType
ParameterizedType: getActualTypeArguments()
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.util.ArrayList;
public class MainClass {
public static void main(String args[]) throws Exception {
Type type = StringList.class.getGenericSuperclass();
System.out.println(type); // java.util.ArrayList<java.lang.String>
ParameterizedType pt = (ParameterizedType) type;
System.out.println(pt.getActualTypeArguments()[0]);
}
}
class StringList extends ArrayList<String> {
}