我试图了解什么是 JVM 中的调用站点。引用自https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-5.html#jvms-5.4.3.6
调用站点说明符解析的结果是一个元组,包括:
• 对 的实例的引用
java.lang.invoke.MethodHandle
,• 对 的实例的引用
java.lang.invoke.MethodType
,
Class
• 对、java.lang.invoke.MethodHandle
、java.lang.invoke.MethodType
和的实例的引用String
。
我们还有所谓的调用站点对象https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-6.html#jvms-6.5.invokedynamic:
bootstrap 方法返回的结果必须是对类为 的对象
java.lang.invoke.CallSite
或其子类 的引用java.lang.invoke.CallSite
。此对象称为调用站点对象
调用站点对象的概念很明确。这只是CallSite
. 但是调用站点说明符呢?那是一个Java对象吗?那是String
字面意思吗?