当前位置: 首页 > 面试题库 >

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

蔺霄
2023-03-14
问题内容

例如,它是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

“访问”应为方法名称。但是我检查了类源代码及其接口,没有所谓的“访问”方法。我在Google上找不到答案,因为Google讨厌各种标点符号。有人可以帮忙吗?非常感谢。


问题答案:

引用@birryree链接的文章:

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



 类似资料:
  • 我正在阅读Log4j2的配置部分。http://logging.apache.org/log4j/2.x/manual/configuration.html 双$$符号是什么意思?e、 g.$${sd:type}?

  • 问题内容: 我需要从Java访问编号文件描述符-除0、1或2之外。 如何才能做到这一点?我查看了该类,但没有找到用给定的文件描述符号初始化它的任何方法。 作为一个具体示例,假设Java被另一种编程语言称为子进程。文件描述符3和4由另一种语言提供,用于输入和输出。 我在Java中需要的是和连接到这些文件描述符的对象,就像System.in,System.out和System.error都连接到文件描

  • 如果 Web 应用不包含任何 servlet、过滤器、或监听器组件或使用注解声明相同的,那么可以不需要 web.xml 文件。换句话说,只包含静态文件或 JSP 页面的应用程序并不需要一个 web.xml 的存在。

  • 所有servlet容器的Web应用程序部署描述文件需要支持以下类型的配置和部署信息: ServletContext初始化参数 Session配置 Servlet声明 Servlet映射 应用程序生命周期监听器类 过滤器定义和过滤器映射 MIME类型映射 欢迎文件列表 错误页面 语言环境和编码映射 安全配置,包括login-config,security-constraint,security-co

  • 本文向大家介绍web.py在模板中输出美元符号的方法,包括了web.py在模板中输出美元符号的方法的使用技巧和注意事项,需要的朋友参考一下 由于web.py已经在模板中定义“$”符号位定界符,所以在模板中如果要使用美元符号需要特殊处理。 如我要在模板中输出“$name”字符串: 报错 $name被认定为一个变量而不是当作HTML字符串处理。如果想要输出“$name”字符串必须要这么写: 保存运行正

  • 本文向大家介绍MyBatis中#号与美元符号的区别,包括了MyBatis中#号与美元符号的区别的使用技巧和注意事项,需要的朋友参考一下 #{变量名}可以进行预编译、类型匹配等操作,#{变量名}会转化为jdbc的类型。 假设id的值为12,其中如果数据库字段id为字符型,那么#{id}表示的就是'12',如果id为整型,那么id就是12,并且MyBatis会将上面SQL语句转化为jdbc的selec