到處說,一個Java標識符可以與所有字符(而不是數字),包括$
和_
Java標識
開始,但我注意到,方法,如isJavaIdentifierStart
返回true,也爲其他字符 像§
,£
,€
etc
然而,是否正確啓動一個標識符與那裏的字符?
到處說,一個Java標識符可以與所有字符(而不是數字),包括$
和_
Java標識
開始,但我注意到,方法,如isJavaIdentifierStart
返回true,也爲其他字符 像§
,£
,€
etc
然而,是否正確啓動一個標識符與那裏的字符?
如果定義isJavaIdentifierStart
返回true它,然後,它的起始字符有效的Java標識符,因爲這是how the specification defines it:
標識符:
IdentifierChars但不是關鍵字或BooleanLiteral或NullLiteral
IdentifierChars:
JavaLetter
IdentifierChars JavaLetterOrDigit
JavaLetter:
這是一個Java字母任何Unicode字符(見下文)
JavaLetterOrDigit:
任何Unicode字符是一個Java字母或數字的(見下文)
...
A「的Java字母」是一個字符爲哪些Character.isJavaIdentifierStart(int)
返回true
的方法。
The method意味着它說。
它返回假爲§
,因爲它不是一個字母,Character.getType('§')
不是Character.LETTER_NUMBER
,它不是一個貨幣符號,它不是一個連接的標點符號。
這對兩個貨幣符號是正確的,因爲這是一個特定的標準。