@Test public void testJdkReflect() throws Exception { benchmark.doSomething("testJdkReflect:", () -> method.invoke(bean, 1)); }
abstract public Object invoke(Object object, int methodIndex, Object... args);
MethodAccess { abstract public Object invoke(Object object, int methodIndex, Object... args); }
MethodAccess { abstract public Object invoke(Object object, int methodIndex, Object... args);  }
MethodAccess { abstract public Object invoke(Object object, int methodIndex, Object... args);  abstract Object invoke(Object object, int methodIndex, Object... args); Object invoke(Object object, String methodName, Class<?>[] paramTypes, Object... args); Object invoke(Object object, String methodName, Object... args); int getIndex(String methodName); int getIndex(String methodName, Class<?>... paramTypes); int getIndex(String methodName, int paramsCount); String[] getMethodNames(); Class<?>[][] getParameterTypes(); Class<?>[] getReturnTypes(); @SuppressWarnings("deprecation") static MethodAccess get(Class<?> type); }
MethodAccess { abstract public Object invoke(Object object, int methodIndex, Object... args);  abstract Object invoke(Object object, int methodIndex, Object... args); Object invoke(Object object, String methodName, Class<?>[] paramTypes, Object... args); Object invoke(Object object, String methodName, Object... args); int getIndex(String methodName); int getIndex(String methodName, Class<?>... paramTypes); int getIndex(String methodName, int paramsCount); String[] getMethodNames(); Class<?>[][] getParameterTypes(); Class<?>[] getReturnTypes(); @SuppressWarnings("deprecation") static MethodAccess get(Class<?> type);  }