我目前有以下代码:
Method(0, "signaturePolymorphicMethod",
MethodDescriptor(ObjectType("java/lang/Object"), VoidType), Seq())
我要添加注释
@java.lang.invoke.MethodHandle$PolymorphicSignature
这个方法。我怎么能这样做?
答案 0 :(得分:1)
注释通常使用JVM的一般“属性”机制进行存储。
在这种情况下,注释是MethodHandle的非公共内部类,具有“运行时保留策略”。因此,要将方法标记为具有“多态签名”,必须将RuntimeVisibibleAnnotations_Attribute添加到相应方法的属性表中。但是,鉴于注释的可见性仅限于java.lang.invoke包,这(在此特定情况下)可能很少有用。不过,可以查询相应包中的方法