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

在回答问题时,我发现自己经常提到方法名称和在线文档。我对如何在文本中引用方法名称感到困惑。 例如,我经常键入:   一个人应该使用
String.equals()
  比较两个字符串是否相等。 但是,这有点误导: 这使得
equals()
看起来像是一个静态成员。 这使得
equals()
似乎不接受任何争论。 为了完成,我想知道: 引用静态成员和实例成员的正确方法是什么? 我见过这样的话: String.equals() 串#equals()方法 myString.equals() 有没有办法以参数无关的方式引用方法? 例如,在Cѭ3中明确地是一个零参数函数,并且
foo()
可以在以后重新定义以具有不同的参数集。 (?)     
已邀请:
如果你想要真正准确,你可以使用
java.lang.String#equals(java.lang.Object)
或更短的形式
String#equals(Object)
这类似于javadoc中使用的符号,有趣的是也看起来类似于文档的链接,结尾于:
String.html#equals(java.lang.Object)
编辑:这是一个描述如何使用引用的javadoc文档的链接。     
我发现String的
equals
方法文档的链接消除了歧义。     
使用myString.equals()是没有意义的,除非你说得很清楚,myString是String的一个实例。 javadoc使用String#equals(),因此大多数开发人员都应该可以理解。这将是我的选择。     
String.equals
。 如果你想给参数类型
String.equals(Object)
。 添加括号(
equals()
)是一个C事物。特别是ANSI C的东西,其中no-args函数将被写为
tostring(void)
(我实际上太年轻(!)以记住K& R / PCC C)。 C ++修正了 - 所以
()
真的很老了。     
我通常会引用类和方法名称,期望读者可以使用它来跟踪文档。也许这有点傲慢。我不知道。 如果我试图说明要使用哪种方法的签名,我通常会提供示例代码。这主要是因为我觉得比写出描述更容易。     
myString.equals()
是完美的。它暗示了类型,并清楚地表明我们正在谈论一个实例。 你甚至可以添加:
myString.equals(aString)
    
在引用方法时,我使用“String.equals()”。这是针对人类读者的,他们很可能从上下文中知道你在说什么。如果它可能变得混乱,只需说“方法String.equals()”
One should use String.equals() for comparing two strings for equality.
说真的,这句话会让谁感到困惑?所以不要担心。它只是英语,没有编译器对你大喊大叫。     

要回复问题请先登录注册