Revised: May/4th/2008; Since: July/17th/2005
Java では変数、クラス、メソッドを始めとして、多くのものに識別するための名前をつける必要がある。この名前の事を識別子と呼ぶ。
識別子はほとんど自由に決められるが、次の点に注意する必要がある。
$, _ の何れかとする。false, true (boolean literal) は不可。null (null literal) は不可。キーワードには次の50個が定義されている。
abstract continue for new switch
assert default if package synchronized
boolean do goto private this
break double implements protected throw
byte else import public throws
case enum instanceof return transient
catch extends int short try
char final interface static void
class finally long strictfp volatile
const float native super while
これに false, true, nullの三つを加えると53個になる。
assertは、J2SDK 1.4 で追加されたアサーション構文のためのキーワードです。
記号が許される文字であるかどうかを調べるためには、char型のラッパー・クラスjava.lang.Charaacterのstaticメソッドがtrueを返すことで評価できます。
class JavaCharacter {
public static void main(String[] args) {
// 引数文字列を char 型配列に変換
char[] c = args[0].toCharArray();
// 配列の要素ごとに繰り返し
for (int i = 0; i < c.length; i++) {
System.out.print(c[i] + ": ");
// 一文字目に許されるか
boolean bln1 = Character.isJavaIdentifierStart(c[i]);
System.out.println("\t first: " + bln1);
// 含まれる文字に許されるか
boolean bln2 = Character.isJavaIdentifierPart(c[i]);
System.out.println("\t part: " + bln2);
}
}
}
C:\java>javac JavaCharacter.java
C:\java>java JavaCharacter "a$_1'?\=<>"
a: first: true
part: true
$: first: true
part: true
_: first: true
part: true
1: first: false
part: true
': first: false
part: false
?: first: false
part: false
\: first: false
part: false
=: first: false
part: false
<: first: false
part: false
>: first: false
part: false
-: first: false
part: false
*: first: false
part: false
static boolean |
isJavaIdentifierPart(char ch)
指定された文字を Java 識別子の最初の文字以外に使用可能かどうかを判定します。 |
static boolean |
isJavaIdentifierPart(int codePoint)
文字 (Unicode コードポイント) を Java 識別子の最初の文字以外に使用可能かどうかを判定します。 |
static boolean |
isJavaIdentifierStart(char ch)
指定された文字を Java 識別子の最初の文字として指定可能かどうかを判定します。 |
static boolean |
isJavaIdentifierStart(int codePoint)
指定された文字 (Unicode コードポイント) を Java 識別子の最初の文字として指定可能かどうかを判定します。 |