ac04e04db97eb29dbd120fc12b971a45215d6b02
[jpf-core.git] / examples / Reflection.java
1 import java.lang.reflect.Method;
2 import java.lang.reflect.Type;
3 import java.lang.reflect.TypeVariable;
4
5 import java.util.List;
6 import java.util.ArrayList;
7
8 public class Reflection {
9
10         class Generic<T,E> {
11         
12         }
13
14         class SampleClass {
15            private String sampleField;
16
17            public String getSampleField() {
18                   return sampleField;
19            }
20
21            /*public List<String> setSampleField(List<String> listString, 
22                                 String sampleField, int one, short two, double three, Object obj) {
23                   this.sampleField = sampleField; 
24                   return listString;
25            }
26            
27            public void setSampleField(String sampleField) {
28               this.sampleField = sampleField;
29            }*/
30            
31            public List<String> setSampleField(List<String> listString) {
32                   return listString;
33            }
34         }
35
36    public static void main(String[] args) {
37
38       Method[] methods = SampleClass.class.getMethods();
39       /*Type[] parameters = methods[1].getGenericParameterTypes();
40       for (int i = 0; i < parameters.length; i++) {
41          System.out.println(parameters[i]);
42       }
43       System.out.println();*/
44       Class[] parameterTypes = methods[6].getParameterTypes();
45       for(Class parameterType: parameterTypes){
46          System.out.println(parameterType.getName());   
47  
48       }
49       System.out.println();
50       TypeVariable[] typeParameters = Generic.class.getTypeParameters();
51       for(TypeVariable typeVar: typeParameters){
52          System.out.println(typeVar);   
53  
54       }
55       /*System.out.println();
56       Type returnType = methods[1].getGenericReturnType();
57       System.out.println(returnType);*/
58    }
59 }
60