Java では、識別子は、変数、メソッド、クラスなどの命名に役立つ 1 つまたは複数の文字のシーケンスとみなされます。識別子を作成するには、特定の規則があります。さらに、キーワード、予約語、リテラルなどの特定の文字シーケンスは、Java で事前定義された意味を持つため、識別子として使用できません。次のセクションで、識別子を作成する基本的なルールを見てみましょう。
広告 このカテゴリーの人気コース JAVA マスタリー - スペシャライゼーション | 78 コース シリーズ | 15 回の模擬テスト無料ソフトウェア開発コースを始めましょう
Web 開発、プログラミング言語、ソフトウェア テスト、その他
すでに述べたように、Java 識別子は作成時に同じルールに従う必要があります。これらに従わない場合、コンパイル時エラーが発生する可能性があります。ルールについては以下で説明します。
abstract | Assert | Boolean | break | byte |
case | Catch | Char | class | const |
continue | Default | Do | double | else |
enum | Extends | Final | finally | float |
for | Goto | If | implements | import |
instanceof | Int | Interface | long | native |
new | Package | Private | protected | public |
return | Short | Static | strictfp | super |
switch | synchronized | This | throw | throws |
transient | Try | Void | volatile | while |
ここでは、const と goto は Java 言語の一部ではありませんが、キーワードとみなされます。
例: SampleClass、従業員
同時に変数名やメソッド名も小文字に従います。上記の状況と同様に、複数の単語が使用される場合はキャメルケースに従います。
例: 数値、MyNumber
定数の場合は、すべて大文字を使用するか、単語を区切るために _(アンダースコア) を使用することをお勧めします。
例: ブール型
無効な識別子の例とその理由。
Invalid Identifier | Reason why it is invalid |
Try | try is a keyword. [Rule 1] |
Null | Null is one of the literals in Java. [Rule 2] |
456Anna | Identifiers should not start with a digit. [Rule 4] |
happy@ | Since @ is a special character, it can’t be used. [Rule 6] |
num? | Since ? is a reserved word, it can’t be used. [Rule 7] |
num 1; | Identifiers should not contain white space. [Rule 5] |
public static void main(String args[]) { // variable declaration int number = 13;
通常、多くの人は識別子を変数としてのみ考慮します。しかし、本当の事実は、識別子がクラス名、パッケージ名、メソッド名などである可能性があるということです。たとえば、以下のコードを見てみましょう。
ここでは、コード内のすべての単語が識別子とみなされます。ただし、ルール 1 にあるように、キーワードを識別子として使用することはできません。これは、キーワードとリテラルがすでに事前定義されているためです。
public class JavaIdentifierExampl { //main method public static void main(String args[]) { // variable declaration int for = 13; System.out.println("value of the number variable is : "+ for); } }
以下に示すように、プログラムが識別子としてキーワードを定義しており、それをコンパイルしようとしているとします。何が起こるでしょうか?
出力:
//Java program with an identifier which do not have any whitespace public class JavaIdentifierExampl { //main method public static void main(String args[]) { // variable declaration int main = 13; System.out.println("value of the number variable is : "+ main); } }
同時に、上記のプログラムでは、for の代わりに、事前に定義されたメソッド名 main を使用してみましょう。
出力:
ご覧のとおり、コードの実行にエラーはありません。識別子には事前定義されたメソッド名、クラス名などを使用できますが、事前定義されたキーワードとリテラルは同じように使用できないためです。
例 #1
キーワードまたはリテラルではない識別子を持つ Java プログラム。
//Java program with an identifier which is not keyword or literal public class JavaIdentifierExampl { //main method public static void main(String args[]) { // variable declaration int number = 25; System.out.println("value of the number variable is : "+number); } }
出力:
例 #2
空白を含まない識別子を持つ Java プログラム。
//Java program with an identifier which do not have any whitespace public class JavaIdentifierExampl { //main method public static void main(String args[]) { // variable declaration int number_23 = 125; System.out.println("value of the number variable is : "+number_23); } }
出力:
例 #3
$.で始まる識別子を持つ Java プログラム
//Java program with an identifier that starts with $ public class JavaIdentifierExampl { //main method public static void main(String args[]) { // variable declaration int $number_23 = 20; System.out.println("value of the number variable is : "+ $number_23); } }
出力:
以上がJava識別子の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。