为什么有些人在对应中使用Class#方法而不是Class.method?

Kev*_*ker 27 java forum mailing-list

在Java中编写方法时(例如在论坛,邮件列表,问题跟踪器等中),许多人使用'#'符号而不是Java的本机.运算符将方法名称与类名分开; 例如,人们提到Object#toString而不是Object.toString.这种语法来自哪里?

ass*_*ias 26

这是在链接到另一个类的方法时在javadoc注释中使用的符号.

编辑

收集评论中提供的其他信息:

  • @Hugo指出,#符号反过来来自HTML锚点
  • @maksimov指出这Object.method是调用静态方法的Java语法,这可能会产生误导

UPDATE

Java 8为方法引用带来了一种新的语法,现在它似乎变得越来越流行 - 所以Object#toString现在倾向于编写Object::toString.

  • 反过来,这来自HTML Anchors,它使用这种表示法表示,因为如果生成HTML javadoc,每个方法都是一个锚. (4认同)