Идентификатор и ключевое слово

Я прочитал в книге для OCJP для Java6 часть с утверждениями. Я дошел до того, что он дает мне представление о том, как компилятор реагирует, если слово "assert" используется в качестве ключевого слова или идентификатора.

В чем разница между Keyword и identifier? Может ли кто-нибудь дать мне простое объяснение и дополнительно один или несколько примеров для обоих?

5 ответов

Решение

Термины "ключевое слово" и "идентификатор" не являются специфичными для Java.

Ключевое слово - это зарезервированное слово из списка ключевых слов Java, которое предоставляет компилятору инструкции. Поскольку ключевые слова зарезервированы, они не могут быть использованы программистом для имен переменных или методов.

Примеры:

final
class
this
synchronized

Идентификаторы - это имена переменных, методов, классов, пакетов и интерфейсов. Они должны состоять из букв, цифр, подчеркивания _ и знака доллара $. Идентификаторы могут начинаться только с буквы, знака подчеркивания или знака доллара.

Примеры:

int index;
String name;

index а также name действительные идентификаторы здесь. int это ключевое слово.

Ключевое слово не может быть использовано в качестве идентификатора.

Идентификаторы - это имена переменных. Например в

int a = 3;

a будет идентификатор. Ключевые слова, с другой стороны, зарезервированы (т.е. вы не можете назвать переменную с помощью ключевого слова), предопределенные слова, которые имеют определенное значение в языке. Например в

if (a == 3)
    System.out.println("Hello World");

if это ключевое слово. Он имеет определенную функцию и не может использоваться в качестве имени переменной. Кроме того, слова, используемые для объявления примитивных типов, также являются ключевыми словами, например int, char, long, boolean и т.д. Вы можете увидеть полный список ключевых слов Java здесь

Ключевые слова зарезервированные слова, такие как new,static,public,if,else,..

Идентификатор может быть именем любой переменной.

int age = 26;

"age" здесь есть идентификатор, а int это зарезервированное слово.

Следующий пример не скомпилируется:

String static = "hello";
int public = 4;

Вы не можете сделать это, потому что "static" а также "public" являются keywords, что в этом случае используются как identifiers, что не допускается.

Я предполагаю, что идентификатор является вашим собственным (имя функции, имя переменной, ...); и ключевым словом является "класс" или "утверждать" или "пока" - определяемые языком идентификаторы, другими словами

На следующей странице содержится список идентификаторов Java и ключевых слов, связанных с сертификацией OCA 1Z0-803. Ключевые слова идентификаторов Java

Другие вопросы по тегам