Java方法描述符中美元符号的含义?

Java方法描述符中美元符号的含义?,java,descriptor,dollar-sign,Java,Descriptor,Dollar Sign,例如,它是Jikes RVM堆栈的一部分 at [0x70cfba90, 0x708cfaa4] Lorg/apache/lucene/index/SegmentInfos; **access$000**(Ljava/lang/String;)V at [0x70cfbb04, 0x708b55c8] Lorg/apache/lucene/index/SegmentInfos$ FindSegmentsFile; run()Ljava/lang/Object; at

例如,它是Jikes RVM堆栈的一部分

at [0x70cfba90, 0x708cfaa4] Lorg/apache/lucene/index/SegmentInfos; 
       **access$000**(Ljava/lang/String;)V
at [0x70cfbb04, 0x708b55c8] Lorg/apache/lucene/index/SegmentInfos$
       FindSegmentsFile; run()Ljava/lang/Object; at line 554
at [0x70cfbb24, 0x708c4a8d] Lorg/apache/lucene/index/SegmentInfos; 
       read(Lorg/apache/lucene/store/Directory;)V at line 272
“access”应该是一个方法名。但是我检查了类源代码及其接口,那里没有称为“access”的方法。我在谷歌上找不到答案,因为谷歌讨厌各种标点符号。有人能帮忙吗?非常感谢。

引自以下链接:

类C的私有成员m可以被另一个类D使用,如果一个类包围另一个类,或者如果它们被一个公共类包围。由于虚拟机不知道这种分组,编译器在C中创建访问方法的本地协议,以允许D读取、写入或调用成员m。这些方法的名称为access$0、access$1等。它们从不公开。访问方法是唯一的,因为它们可以添加到封闭类中,而不仅仅是内部类


它是为访问方法生成的特殊代码。非常感谢你。这很有帮助