java中的MethodHandler入门
Posted strongmore
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中的MethodHandler入门相关的知识,希望对你有一定的参考价值。
介绍
MethodHandler,翻译过来就是方法句柄,是java7提供的jsr292的一部分,为了支持动态方法的调用,主要是java.lang.invoke包。
使用
public class Client {
public static void main(String[] args) throws Throwable {
MethodHandles.Lookup lookup = MethodHandles.lookup();
//获取String类中静态方法valueOf对应的方法句柄
MethodHandle valueOfMethodHandler = lookup.findStatic(String.class, "valueOf", MethodType.methodType(String.class, int.class));
//执行方法句柄
String result = (String) valueOfMethodHandler.invokeExact(12);
System.out.println(result);
}
}
Lookup可以简单看做查找方法句柄的工具,MethodType表示一个方法类型,包括返回值和参数列表。方法句柄相对于反射来说,更加的轻量级。
以上是关于java中的MethodHandler入门的主要内容,如果未能解决你的问题,请参考以下文章