public class LookupFactory extends Object
MethodHandles.Lookup工厂,用于创建MethodHandles.Lookup对象MethodHandles.lookup()获取到的MethodHandles.Lookup在调用findSpecial和unreflectSpecial
时会出现权限不够问题,抛出"no private access for invokespecial"异常,因此针对JDK8及JDK9+分别封装lookup方法。
参考:
| Constructor and Description |
|---|
LookupFactory() |
| Modifier and Type | Method and Description |
|---|---|
static MethodHandles.Lookup |
lookup(Class<?> callerClass)
jdk8中如果直接调用
MethodHandles.lookup()获取到的MethodHandles.Lookup在调用findSpecial和unreflectSpecial
时会出现权限不够问题,抛出"no private access for invokespecial"异常,因此针对JDK8及JDK9+分别封装lookup方法。 |
public static MethodHandles.Lookup lookup(Class<?> callerClass)
MethodHandles.lookup()获取到的MethodHandles.Lookup在调用findSpecial和unreflectSpecial
时会出现权限不够问题,抛出"no private access for invokespecial"异常,因此针对JDK8及JDK9+分别封装lookup方法。callerClass - 被调用的类或接口MethodHandles.LookupCopyright © 2025. All rights reserved.