有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

编写在文本中引用Java成员的正确方法是什么?

在回答问题时,我发现自己经常提到方法名称和在线文档。我对文本中应该如何引用方法名感到困惑

例如,我经常键入:

One should use String.equals() for comparing two strings for equality.

然而,这有点误导:

  1. 它使equals()看起来像是一个静态成员
  2. 它使equals()看起来不接受任何参数

为了完整起见,我想知道:

引用静态成员和实例成员的正确方法是什么

我见过这样的事情:

  • 绳子。等于
  • 字符串#等于()
  • myString。等于

有没有一种方法可以以不可知论的方式引用方法

例如,在C中foo(void)是一个显式的零参数函数,并且foo()可以稍后重新定义为具有不同的参数集。(?)


共 (4) 个答案

  1. # 1 楼答案

    使用myString。equals()没有任何意义,除非您非常清楚地声明myString是String的一个实例。 javadoc使用字符串#equals(),因此大多数开发人员都应该能够阅读和理解。这是我的选择

  2. # 2 楼答案

    如果你真的想精确,你可以使用

    java.lang.String#equals(java.lang.Object)
    

    或者更简短的形式

    String#equals(Object)
    

    这类似于javadoc中使用的符号,有趣的是,它看起来也类似于指向文档的链接,该链接以以下内容结尾:

    String.html#equals(java.lang.Object)
    

    编辑:这里有一个到javadoc documentation的链接,描述如何使用引用

  3. # 3 楼答案

    我发现,字符串的^{}方法的文档链接消除了歧义

  4. # 4 楼答案

    String.equals

    如果你想给出参数类型String.equals(Object)

    添加括号(equals())是C语言的事情。尤其是在ANSIC中,一个无args函数将被写为tostring(void)(实际上我太年轻了(!)记住K&;R/PCC)。C++固定了-^ {CD5}}确实是相当古老的学校。