通常,使用空间让程序看起来很容易组织起来,这是一种很好的编程风格。例如,在数学运算之间,有组织的程序员经常会放置空间。Java中的空间意味着什么?
但我也看到的是使用骆驼案件的人。像outOfBoundException一样。
为什么程序员不能使用空格而不是在骆驼案例中编写名字/标识符?
通常,使用空间让程序看起来很容易组织起来,这是一种很好的编程风格。例如,在数学运算之间,有组织的程序员经常会放置空间。Java中的空间意味着什么?
但我也看到的是使用骆驼案件的人。像outOfBoundException一样。
为什么程序员不能使用空格而不是在骆驼案例中编写名字/标识符?
由空格分隔的变量单词将被解释为多个变量。编译器无法理解您的意思是单个变量。在数学中,通常使用单个字母符号。歧义存在于我们的日常语言中,但编程语言无法承受。现在,使用骆驼案件分开单词只是一个惯例。您可能会用其他语言突出显示。然而,它对所得到的应用程序几乎没有影响。搜索Google命名约定。你可能还想看看“约定优于配置”,以及Python中的空格缩进如何完全改变。另请注意,Excel公式中的空格表示相交。
为了避免歧义。
例如,
StringBuilder firstStringBuilder
声明一个StringBuilder
可变称为firstStringBuilder
。
但是,如果你写
string builder first string builder
,那么什么是类名,什么是变量名?编译器是否应将其解释为String builderFirstStringBuilder
?所以使用空间是不可行的。
你如何在表格中写下你的名字Doeser或D O E S E R? 对象名称是一个身份,这就是为什么我们不能在名称之间使用空格。
Java中的空白用于分隔Java源文件中的标记。在某些地方,如访问修饰符,类型名称和标识符之间需要空格,并用于提高其他地方的可读性。
Java有一些命名convenstions http://java.about.com/od/javasyntax/a/nameconventions.htm
至于其他的答案指出,如果编程语言允许在标识符空间,它引入了严重的不确定性问题。
语法允许两个连续的<identifier>
符号的任何地方都是不明确的。
语法允许在<identifier>
之前或之后的关键字的任何地方都是不明确的。
这将是可能的设计语法来摆脱这些歧义;例如
$
开始,或者必须用引号引起来,和/或但是,当你解决这些规则的所有后果时,最终你会得到一种大多数程序员都恨的语言。
是什么空间,在Java中是什么意思?
要特别回答 - 空格分隔标识符和关键字。在一个文字字符或字符串中,它代表Unicode SP
码点。
为什么程序员不能在空间中使用空格而不是写名字/标识符?
因为这是指定Java语言的方式!要了解他们为什么如此指定Java,请参阅上文。
你的意思是为什么*不能*他们? – 2015-04-03 01:45:55
是的,编辑谢谢 – user11355 2015-04-03 01:46:44
你给的例子,'OutOfBoundsException'实际上被称为picket case。骆驼案例更像'outOfBoundsException'... – user700390 2015-04-03 01:48:07