Eclipse Java-недопустимое имя пакета-зарезервированные слова в имени пакета
Я нахожусь в середине проекта android и пытался создать в нем новый пакет.
com.mycompany.myprojectname.new
Ну, Eclipse не позволяет мне создать его и показывает эту ошибку:
недопустимое имя пакета. "new" не является допустимым идентификатором Java
Я никогда не знал, что имя пакета зарезервировано словами, которые мы не можем использовать. Мои вопросы:
- это затмение? или вещь Java? Я попробовал чистую Java проект (не Android), просто чтобы проверить, но там также я получил ту же ошибку.
- какие другие зарезервированные слова, которые не допускаются?
- есть ли какие-либо документы об этом?
3 ответов
Да, это общая вещь Java.
на список зарезервированных слов можно найти здесь. Они:
abstract continue for new switch assert default goto package synchronized boolean do if 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
документация о том, что зарезервированные слова не могут использоваться в именах пакетов, если они найдены в учебник по именованию пакетов, среди других местах.
авторитетный источник (как всегда) спецификация языка Java, а именно:
- § 3.9 ключевые слова и
-
идентификатор не может иметь такое же написание (последовательность символов Юникода), как ключевое слово (§3.9), логический литерал (§3.10.3), или значение null (§3.10.7), или ошибка времени компиляции происходит.
посмотреть документы здесь:
http://docs.oracle.com/javase/tutorial/java/package/namingpkgs.html
в некоторых случаях имя домена интернета может быть недопустимым пакетом имя. Это может произойти, если имя домена содержит дефис или другое специальный символ, если имя пакета начинается с цифры или другие символ, который является незаконным для использования в качестве начала имени Java, или если имя пакета содержит зарезервированную Java ключевое слово, например, "int".