通常情况下,使用空间使程序看起来很容易组织,这是一个很好的编程风格。例如,在数学运算之间,有组织的程序员通常会放置空间。
但我也看到人们使用骆驼案。喜欢outOfBoundException。
为什么程序员不能在骆驼案件中使用空格而不是写名字/标识符?
答案 0 :(得分:5)
你如何用Doeser或D O E S E R形式写下你的名字? 对象名称是一个标识,这就是为什么我们不能在名称之间使用空格。
Java中的空格用于分隔Java源文件中的标记。某些地方需要空格,例如访问修饰符,类型名称和标识符之间的空格,用于提高其他地方的可读性。
Java有一些命名的召集 http://java.about.com/od/javasyntax/a/nameconventions.htm
答案 1 :(得分:1)
由空格分隔的变量组成单词将被解释为多个变量。编译器无法理解您的意思是单个变量。在数学中,通常使用单字母符号。模糊性存在于我们的日常语言中,但编程语言无法承受。现在,使用骆驼案来分隔单词只是一种惯例。您可以在其他语言中使用下划线。然而,它对最终的应用几乎没有影响。在Google上搜索命名约定。您可能还想查看"约定优于配置"以及Python中用空格缩进的方式如何完全不同。另请注意,Excel公式中的空格意味着交叉。
答案 2 :(得分:1)
避免含糊不清。
例如,
StringBuilder firstStringBuilder
声明一个名为StringBuilder
的{{1}}变量。
但如果你写
firstStringBuilder
,那么什么是类名,什么是变量名?编译器应该将其解释为string builder first string builder
吗?所以使用空间是行不通的。
答案 3 :(得分:1)
正如其他答案所指出的,如果编程语言允许标识符中的空格,则会引入严重的歧义问题。
语法允许两个连续<identifier>
个符号的任何地方都不明确。
语法允许<identifier>
之前或之后的关键字不明确的任何地方。
有可能设计一种语法来消除这些含糊之处; e.g。
$
开头,或者必须用引号和/或但是当你解决这些规则的所有后果时,你最终会得到一种大多数程序员都会讨厌的语言。
空间在Java中意味着什么?
要具体回答这个问题 - 空格分隔标识符和关键字。在文字字符或字符串中,它表示Unicode SP
代码点。
为什么程序员不能在骆驼案件中使用空格而不是写名字/标识符?
因为这是指定Java语言的方式!要了解他们为何如此指定Java,请参见上文。