1 import java.lang.reflect.Method;
2 import java.lang.reflect.Type;
3 import java.lang.reflect.TypeVariable;
7 import java.util.ArrayList;
8 import java.util.Arrays;
10 public class Reflection {
12 class Generic<TUVW,ABCD,KLM,NOP> {
17 private String sampleField;
19 public Generic<Integer,String,Double,Short> setSampleField(List<String> listString, Map<Integer,String> mapString,
20 Generic<Integer,String,Double,Short> test,
21 String sampleField, int one, short two, double three, Object obj) {
22 this.sampleField = sampleField;
27 public String getSampleField() {
31 public void setSampleField(String sampleField) {
32 this.sampleField = sampleField;
35 public List<String> setSampleField(List<String> listString) {
40 public static void main(String[] args) {
42 /*Method[] methods = SampleClass.class.getMethods();
43 Type[] parameters = methods[0].getGenericParameterTypes();
44 //Type[] parameters = methods[0].getGenericParameterTypes();
45 for (int i = 0; i < parameters.length; i++) {
46 System.out.println(parameters[i]);
49 Class[] parameterTypes = methods[0].getParameterTypes();
50 for(Class parameterType: parameterTypes){
51 System.out.println(parameterType.getName());
54 System.out.println();*/
55 TypeVariable[] typeParameters = Generic.class.getTypeParameters();
56 //TypeVariable[] typeParameters = SampleClass.class.getTypeParameters();
57 for(TypeVariable typeVar: typeParameters){
58 System.out.println(typeVar);
63 Type returnType = methods[0].getGenericReturnType();
64 System.out.println(returnType);*/