import com.thoughtworks.paranamer.Paranamer;
import com.thoughtworks.paranamer.AnnotationParanamer;
public class MyClass {
private String myField;
@MyAnnotation
public void myMethod(String arg1, int arg2) {
}
public static void main(String[] args) {
Paranamer paranamer = new AnnotationParanamer();
MyClass myClass = new MyClass();
String[] fieldNames = paranamer.lookupParameterNames(myClass.getClass().getDeclaredField("myField"));
System.out.println("Field name: " + fieldNames[0]);
String[] methodNames = paranamer.lookupParameterNames(myClass.getClass().getDeclaredMethod("myMethod", String.class, int.class));
System.out.println("Method name: " + methodNames[0]);
}
}
import com.thoughtworks.paranamer.CachingParanamer;
public class MyClass {
private String myField;
public void myMethod(String arg1, int arg2) {
}
public static void main(String[] args) {
CachingParanamer cachingParanamer = new CachingParanamer();
MyClass myClass = new MyClass();
String[] fieldNames = cachingParanamer.lookupParameterNames(new MyClass().getClass().getDeclaredField("myField"));
System.out.println("Field name: " + fieldNames[0]);
String[] methodNames = cachingParanamer.lookupParameterNames(new MyClass().getClass().getDeclaredMethod("myMethod", String.class, int.class));
System.out.println("Method name: " + methodNames[0]);
}
}