Идентификатор и ключевое слово
Я прочитал в книге для 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