前の記事で,Pythonの識別子のUnicodeの扱いについて取り上げました。では,同じくUnicodeの様々な文字を識別子に使えるJavaとはどのように類似しているか,あるいは違っているでしょうか。 Javaの識別子の仕様 Javaは最初からUnicodeを前提に設計されており,変数名やメソッド名等の識別子にも世界の様々な文字を使えるようになっています。 識別子の仕様は言語仕様Java Language Specification 3.8. Identifiersに見えます。が,読んでみると実は,このセクションにはほとんど中身がなく,実質的にはJava APIのCharacterクラスの2つのstaticメソッド isJavaIdentifierStart(int) および isJavaIdentifierPart(int) にて,識別子に使える文字が規定されています。前者が識別子先頭,