Class<?> clazz = MyClass.class;
Method[] methods = ReflectionUtils.getMethods(clazz);
for (Method method : methods) {
}
Class<?> clazz = MyClass.class;
Field[] fields = ReflectionUtils.getFields(clazz);
for (Field field : fields) {
}
Class<?> clazz = MyClass.class;
Method method = clazz.getDeclaredMethod("privateMethod", parameterTypes);
method.setAccessible(true);
method.invoke(object, arguments);
Class<?> clazz = MyClass.class;
Field field = clazz.getDeclaredField("privateField");
field.setAccessible(true);
field.set(object, value);
Class<?> clazz = MyClass.class;
Constructor<?> constructor = clazz.getConstructor(parameterTypes);
Object instance = constructor.newInstance(arguments);