最近在看MethodHandle
相关内容,我们将MethodHandle
转反射的Executable
对象,可以这么使用:
final Executable executable = MethodHandles.reflectAs(Executable.class, methodHandle);
当然你也可以这么用:
final MethodHandles.Lookup lookup = MethodHandles.lookup();
MethodHandle methodHandle = lookup
.findStatic(Test.class, "myMethod", MethodType.methodType(resultType, paramerType));
Method method = lookup.revealDirect(methodHandle).reflectAs(Method.class, lookup);
System.out.println(method);
javadoc api