12

我正在检查其他人编写的源代码。我遇到过这样的事情:

x = new MyObject();
x._("somestring")  

这个表达式 object._("a string here") 是什么意思?

4

2 回答 2

19

它只是意味着您有一个名称_在类MyObject(或超类)中的方法。没有什么特别的,该_字符恰好在 Java 名称中有效。

你可能会感到惊讶,因为你不经常看到。而且您不会经常看到,因为“不鼓励这种做法”。它使代码更难阅读。

这里

变量的名称可以是任何合法标识符——无限长度的 Unicode 字母和数字序列,以字母、美元符号“$”或下划线字符“_”开头。但是,惯例是始终以字母开头变量名,而不是“$”或“_”。此外,按照惯例,从不使用美元符号字符。您可能会发现在某些情况下自动生成的名称将包含美元符号,但您的变量名称应始终避免使用它。下划线字符也有类似的约定;虽然以“_”开头的变量名称在技术上是合法的,但不鼓励这种做法。不允许使用空格

于 2013-07-15T14:17:05.803 回答
1

MyObject有一个方法 _() 接受String作为输入参数。

于 2013-07-15T14:19:18.093 回答