import java.lang.reflect.TypeVariable;
import java.util.List;
+import java.util.Map;
import java.util.ArrayList;
+import java.util.Arrays;
public class Reflection {
- class Generic<T,E> {
+ class Generic<TUVW,ABCD,KLM,NOP> {
}
class SampleClass {
private String sampleField;
- public String getSampleField() {
- return sampleField;
- }
-
- /*public List<String> setSampleField(List<String> listString,
+ public Generic<Integer,String,Double,Short> setSampleField(List<String> listString, Map<Integer,String> mapString,
+ Generic<Integer,String,Double,Short> test,
String sampleField, int one, short two, double three, Object obj) {
this.sampleField = sampleField;
- return listString;
+ return test;
+ }
+
+ /*
+ public String getSampleField() {
+ return sampleField;
}
public void setSampleField(String sampleField) {
this.sampleField = sampleField;
- }*/
+ }
public List<String> setSampleField(List<String> listString) {
return listString;
- }
+ }*/
}
public static void main(String[] args) {
Method[] methods = SampleClass.class.getMethods();
- /*Type[] parameters = methods[1].getGenericParameterTypes();
+ Type[] parameters = methods[0].getGenericParameterTypes();
+ //Type[] parameters = methods[0].getGenericParameterTypes();
for (int i = 0; i < parameters.length; i++) {
System.out.println(parameters[i]);
}
- System.out.println();*/
- Class[] parameterTypes = methods[6].getParameterTypes();
+ System.out.println();
+ /*Class[] parameterTypes = methods[0].getParameterTypes();
for(Class parameterType: parameterTypes){
System.out.println(parameterType.getName());
}
System.out.println();
TypeVariable[] typeParameters = Generic.class.getTypeParameters();
+ //TypeVariable[] typeParameters = SampleClass.class.getTypeParameters();
for(TypeVariable typeVar: typeParameters){
System.out.println(typeVar);
}
- /*System.out.println();
- Type returnType = methods[1].getGenericReturnType();
+ System.out.println();*/
+ /*
+ Type returnType = methods[0].getGenericReturnType();
System.out.println(returnType);*/
}
}