Список ключевых слов Java - List of Java keywords
 
  Фрагмент кода Java с ключевыми словами, выделенными синим жирным шрифтом.
в Язык программирования Java, а Ключевое слово любой из 52 зарезервированные слова[1] которые имеют предопределенное значение на языке; из-за этого программисты не могут использовать ключевые слова в качестве имен для переменные, методы, классы, или как любой другой идентификатор.[2] Из этих 52 ключевых слов 49 используются, 1 находится в режиме предварительного просмотра и 2 не используются. Из-за их особых функций в языке большинство интегрированные среды разработки для использования Java подсветка синтаксиса отображать ключевые слова другим цветом для облегчения идентификации.
Список
- _
- Знак подчеркивания, добавленный в Java 9, стал ключевым словом и больше не может использоваться в качестве имени переменной.[3]
- Абстрактные
- Метод без определения должен быть объявлен как абстрактный, а содержащий его класс должен быть объявлен как абстрактный. Абстрактные классы не могут быть созданы. Абстрактные методы должны быть реализованы в подклассах. Ключевое слово abstract нельзя использовать с переменными или конструкторами. Обратите внимание, что абстрактный класс не обязательно должен иметь абстрактный метод.
- утверждать(добавлено в J2SE 1.4 )[4]
- Assert описывает предикат (утверждение истина – ложь), помещенный в программу Java, чтобы указать, что разработчик считает, что предикат всегда истинен в этом месте. Если утверждение оценивается как ложное во время выполнения, возникает ошибка утверждения, которая обычно приводит к прерыванию выполнения. Необязательно включить с помощью метода ClassLoader.
- логический
- Определяет логическую переменную только для значений «истина» или «ложь». По умолчанию значение логического примитивного типа ложно. Это ключевое слово также используется для объявления, что метод возвращает значение примитивного типа. логический.
- перемена
- Используется для завершения выполнения в теле текущего цикла.
- байт
- В байтключевое слово используется для объявления поля, которое может содержать 8-битовое целое число с дополнением до двух со знаком.[5][6] Это ключевое слово также используется для объявления, что метод возвращает значение примитивного типа.байт.[7][8]
- дело
- Заявление в выключательблок может быть помечен одним или несколькимиделоили жедефолтэтикетки. Ввыключательоператор оценивает свое выражение, затем выполняет все операторы, следующие за совпадающимиделометка; видетьвыключатель.[9][10]
- ловить
- Используется вместе с пытатьсяблок и необязательныйнаконец-тоблокировать. Заявления вловитьукажите, что делать, если конкретный тип исключения вызванпытатьсяблокировать.
- char
- Определяет символьную переменную, способную содержать любой символ из набора символов исходного файла java.
- учебный класс
- Тип, определяющий реализацию определенного типа объекта. Определение класса определяет пример и класс поля, методы, и внутренние классы а также указание интерфейсы класс реализует и немедленное суперкласс класса. Если суперкласс не указан явно, суперкласс неявно Объект. Ключевое слово class также можно использовать в форме Class.учебный класс чтобы получить объект класса без необходимости в экземпляре этого класса. Например, String.class можно использовать вместо того, чтобы делать новая строка (). getClass ().
- const
- Не используется, но зарезервировано.
- Продолжить
- Используется для возобновления выполнения программы в конце тела текущего цикла. Если за ним следует метка, Продолжитьвозобновляет выполнение в конце окружающего помеченного тела цикла.
- дефолт
- В дефолтключевое слово может при желании использоваться в оператор переключения пометить блок операторов, который будет выполняться, если нетделосоответствует указанному значению; видетьвыключатель.[9][10] В качестве альтернативыдефолтключевое слово также можно использовать для объявления значений по умолчанию в Аннотация Java. Начиная с Java 8,дефолтключевое слово может использоваться, чтобы позволить интерфейсу предоставлять реализацию метода.
- делать
- В делатьключевое слово используется вместе спокасоздать цикл do-while, который выполняет блок операторов, связанных с циклом, а затем проверяет логическое выражение, связанное спока. Если выражение оценивается какистинный, блок выполняется снова; это продолжается до тех пор, пока выражение не станетложный.[11][12]
- двойной
- В двойнойключевое слово используется для объявления переменной, которая может содержать 64-битный двойная точность IEEE 754 число с плавающей запятой.[5][6] Это ключевое слово также используется для объявления, что метод возвращает значение примитивного типа.двойной.[7][8]
- еще
- В ещеключевое слово используется вместе сеслисоздать оператор if-else, который проверяет логическое выражение; если выражение оценивается какистинный, блок операторов, связанных сеслиоцениваются; если он оценивается какложный, блок операторов, связанных сещеоцениваются.[13][14]
- перечислить(добавлено в J2SE 5.0 )[4]
- Ключевое слово Java, используемое для объявления перечислимый тип. Перечисления расширяют базовый класс Enum.
- расширяет
- Используется в объявлении класса для указания суперкласса; используется в объявлении интерфейса для определения одного или нескольких суперинтерфейсов. Класс X расширяет класс Y, добавляя функциональные возможности, либо путем добавления полей или методов к классу Y, либо путем переопределения методов класса Y. Интерфейс Z расширяет один или несколько интерфейсов путем добавления методов. Класс X называется подклассом класса Y; Интерфейс Z называется подинтерфейсом расширяемых им интерфейсов.
- Также используется для указания верхней границы параметра типа в Generics.
- окончательный
- Определите сущность один раз, которую нельзя изменить или создать из нее позже. Более конкретно: конечный класс не может быть разделен на подклассы, конечный метод не может быть переопределен, а конечная переменная может встречаться не более одного раза как левое выражение в исполняемой команде. Все методы в конечном классе неявно окончательный.
- наконец-то
- Используется для определения блока операторов для блока, определенного ранее пытатьсяключевое слово. Внаконец-тоблок выполняется после того, как выполнение выходит изпытатьсяблок и любые связанныеловитьпредложений независимо от того, было ли исключение выброшено или перехвачено, или метод левого выполнения в серединепытатьсяили желовитьблоки с использованиемвозвращатьсяключевое слово.
- плавать
- В плаватьключевое слово используется для объявления переменной, которая может содержать 32-битный одинарная точность Число с плавающей запятой IEEE 754.[5][6] Это ключевое слово также используется для объявления, что метод возвращает значение примитивного типа.плавать.[7][8]
- за
- В заключевое слово используется для создания для цикла, который определяет инициализацию переменной, a логическое выражение, и приращение. Сначала выполняется инициализация переменной, а затем вычисляется логическое выражение. Если выражение оценивается какистинный, блок операторов, связанных с циклом, выполняется, а затем выполняется приращение. Затем снова вычисляется логическое выражение; это продолжается до тех пор, пока выражение не станетложный.[15]
- По состоянию на J2SE 5.0, то заключевое слово также можно использовать для создания так называемого "улучшен для цикла ",[16] в котором указывается множество или жеИтерабельныйобъект; каждая итерация цикла выполняет связанный блок операторов с использованием другого элемента в массиве илиИтерабельный.[15]
- идти к
- Неиспользованный
- если
- В еслиключевое слово используется для создания если заявление, который проверяет логическое выражение; если выражение оценивается какистинный, выполняется блок операторов, связанный с оператором if. Это ключевое слово также можно использовать для создания оператор if-else; видетьеще.[13][14]
- орудия
- Включен в объявление класса, чтобы указать один или несколько интерфейсы которые реализованы текущим классом. Класс наследует типы и абстрактные методы, объявленные интерфейсами.
- импорт
- Используется в начале исходный файл указать классы или целые Пакеты Java на них будет ссылаться позже без включения их имен пакетов в ссылку. Начиная с J2SE 5.0, импортзаявления могут импортироватьстатическийчлены класса.
- экземпляр
- А бинарный оператор который принимает ссылку на объект в качестве первого операнда и класс или интерфейс в качестве второго операнда и дает логический результат. В экземпляроператор оценивается как истина тогда и только тогда, когда тип среды выполнения объекта совместим по назначению с классом или интерфейсом.
- int
- В intключевое слово используется для объявления переменной, которая может содержать 32-битное целое число с дополнением до двух со знаком.[5][6] Это ключевое слово также используется для объявления, что метод возвращает значение примитивного типа.int.[7][8]
- интерфейс
- Используется для объявления особого типа класса, который содержит только абстрактные методы или методы по умолчанию, константа (статический финал) поля истатическийинтерфейсы. Позже это может быть реализовано классами, которые объявляют интерфейс сорудияключевое слово. Поскольку в Java запрещено множественное наследование, для его обхода используются интерфейсы. Интерфейс может быть определен в другом интерфейсе.
- длинный
- В длинныйключевое слово используется для объявления переменной, которая может содержать 64-битное целое число с дополнением до двух со знаком.[5][6] Это ключевое слово также используется для объявления, что метод возвращает значение примитивного типа.длинный.[7][8]
- родные
- Используется в объявлениях методов, чтобы указать, что метод реализован не в том же исходном файле Java, а на другом языке.[8]
- новый
- Используется для создания экземпляра класса или объекта массива. Использование ключевого слова для этой цели не обязательно (как показано на примере Scala ), хотя он служит двум целям: он обеспечивает существование разных пространств имен для методов и имен классов, статически и локально определяет, что новый объект действительно создан, и какого он типа среды выполнения (возможно, вводя зависимость в код).
- незапечатанный
- Используется для объявления того, что класс или интерфейс, расширяющий запечатанный класс, может быть расширен неизвестными классами.[17]
- упаковка
- Пакет Java - это группа похожих классов и интерфейсов. Пакеты декларируются с упаковкаключевое слово.
- частный
- В частныйключевое слово используется в объявлении метода, поля или внутреннего класса; закрытые члены могут быть доступны только другим членам их собственного класса.[18]
- защищенный
- В защищенныйключевое слово используется в объявлении метода, поля или внутреннего класса; защищенные члены могут быть доступны только членам их собственного класса, этого класса подклассы или классы из того же упаковка.[18]
- общественный
- В общественныйключевое слово используется в объявлении класса, метода или поля; открытые классы, методы и поля могут быть доступны членам любого класса.[18]
- возвращаться
- Используется для завершения выполнения метода. За ним может следовать значение, требуемое определением метода, которое возвращается вызывающей стороне.
- короткая
- В короткаяключевое слово используется для объявления поля, которое может содержать 16-битовое знаковое целое число с дополнением до двух.[5][6] Это ключевое слово также используется для объявления, что метод возвращает значение примитивного типа.короткая.[7][8]
- статический
- Используется для объявления поля, метода или внутреннего класса как поля класса. Классы поддерживают одну копию полей класса независимо от того, сколько существует экземпляров этого класса. статическийтакже используется для определения метода как метода класса. Методы класса граница к классу, а не к конкретному экземпляру, и может работать только с полями класса. (Классы и интерфейсы объявлены какстатическийчлены другого класса или интерфейса на самом деле являются классами верхнего уровня и нет внутренние классы.)
- strictfp(добавлено в J2SE 1.2 )[4]
- Ключевое слово Java, используемое для ограничения точности и округления вычислений с плавающей запятой для обеспечения переносимости.[8]
- супер
- Наследование в основном используется для достижения динамического связывания или полиморфизма времени выполнения в java. Используется для доступа к членам класса, унаследованного от класса, в котором он появляется. Позволяет подклассу получить доступ отвергнутый методы и скрытые члены его суперкласса. В суперключевое слово также используется для переадресации вызова из конструктора в конструктор в суперклассе.
- Также используется для указания нижней границы параметра типа в Generics.
- выключатель
- В выключательключевое слово используется вместе сделоидефолтсоздать оператор переключения, который оценивает переменную, сопоставляет ее значение с определеннымдело, и выполняет блок операторов, связанных с этимдело. Если нетделосоответствует значению, необязательный блок, помеченныйдефолтвыполняется, если включен.[9][10]
- синхронизированный
- Используется в объявлении метода или блока кода для получения мьютекс заблокировать объект, пока текущий нить выполняет код.[8] Для статических методов заблокированным объектом является класс Учебный класс. Гарантирует, что не более одного потока одновременно, работающего с одним и тем же объектом, выполняет этот код. Блокировка мьютекса автоматически снимается, когда выполнение завершает синхронизированный код. Поля, классы и интерфейсы не могут быть объявлены как синхронизированный.
- это
- Используется для представления экземпляра класса, в котором он появляется. этоможет использоваться для доступа к членам класса и как ссылка на текущий экземпляр. Вэтоключевое слово также используется для переадресации вызова из одного конструктора в классе другому конструктору в том же классе.
- бросать
- Вызывает создание объявленного экземпляра исключения. Это заставляет выполнение продолжаться с первого включающего обработчика исключения, объявленного ловитьключевое слово для обработки типа исключения, совместимого с назначением. Если такой обработчик исключений не найден в текущем методе, метод возвращается, и процесс повторяется в вызывающем методе. Если ни при одном вызове метода в стеке обработчик исключений не обнаружен, то исключение передается обработчику неперехваченных исключений потока.
- бросает
- Используется в объявлениях методов, чтобы указать, какие исключения не обрабатываются внутри метода, а передаются на следующий более высокий уровень программы. Все неперехваченные исключения в методе, не являющиеся экземплярами RuntimeExceptionдолжны быть объявлены с использованиембросаетключевое слово.
- преходящий
- Объявляет, что поле экземпляра не является частью значения по умолчанию сериализованный форма объекта. Когда объект сериализуется, в последовательное представление по умолчанию включаются только значения его непереходных полей экземпляра. Когда объект десериализуется, временные поля инициализируются только значениями по умолчанию. Если форма по умолчанию не используется, например когда serialPersistentFields table объявлен в иерархии классов, все преходящийключевые слова игнорируются.[19][20]
- пытаться
- Определяет блок операторов с обработкой исключений. Если исключение выбрасывается внутри пытатьсяблок, необязательныйловитьблок может обрабатывать объявленные типы исключений. Также необязательныйнаконец-томожет быть объявлен блок, который будет выполнен, когда выполнение завершитсяпытатьсяблок иловитьпредложения, независимо от того, выброшено исключение или нет. Апытатьсяблок должен иметь хотя бы одинловитьпункт илинаконец-тоблокировать.
- пустота
- В пустотаключевое слово используется, чтобы объявить, что метод не возвращает никакого значения.[7]
- летучий
- Используется в объявлениях полей, чтобы гарантировать видимость изменений переменных в потоках. Каждое чтение изменчивой переменной будет считываться из основной памяти, а не из кеша ЦП, и каждая запись в изменчивую переменную будет записываться в основную память, а не только в кеш ЦП.[21] Таким образом, методы, классы и интерфейсы не могут быть объявлены летучий, а также локальные переменные или параметры.
- пока
- В покаключевое слово используется для создания пока цикл, который проверяет логическое выражение и выполняет блок операторов, связанных с циклом, если выражение оценивается какистинный; это продолжается до тех пор, пока выражение не станетложный. Это ключевое слово также можно использовать для создания цикл do-while; видетьделать.[11][12]
Зарезервированные идентификаторы
Следующие идентификаторы не являются ключевыми словами, однако они ограничены в некоторых контекстах:
- разрешения
- Предложение разрешений определяет классы, которым разрешено расширять запечатанный класс.[22]
- записывать
- запечатанный
- Запечатанный класс или интерфейс могут быть расширены или реализованы только теми классами и интерфейсами, которым это разрешено.[23]
- вар
- Специальный идентификатор, который нельзя использовать в качестве имени типа (начиная с Java 10).[24]
- урожай
- Используется для установки значения для выражения переключения
Зарезервированные слова для буквальных значений
- истинный
- Логическое буквальное значение.
- ложный
- Логическое буквальное значение.
- ноль
- Ссылочное буквальное значение.
Неиспользованный
- const
- Хотя в Java зарезервировано как ключевое слово, constне используется и не имеет функции.[2][25] Для определения констант в Java см.окончательныйключевое слово.
- идти к
- Хотя в Java зарезервировано как ключевое слово, идти кне используется и не имеет функции.[2][25]
Смотрите также
Рекомендации
- ^ https://docs.oracle.com/en/java/javase/15/docs/specs/sealed-classes-jls.html#jls-3.9
- ^ а б c «Спецификация языка Java - Раздел 3.9: Ключевые слова». Спецификация языка Java. Oracle. 2018-08-21. Получено 2018-12-25.
- ^ Гетц, Брайан. «Предупреждение об одном идентификаторе подчеркивания». Разработка OpenJDK Lambda.
- ^ а б c "Ключевые слова языка Java". Учебники по Java. Sun Microsystems, Inc. Получено 2017-07-24.
- ^ а б c d е ж «Примитивные типы данных». Учебники по Java. Sun Microsystems, Inc. 14 февраля 2008 г.. Получено 2008-12-03.
- ^ а б c d е ж Фланаган 2005, п. 22.
- ^ а б c d е ж грамм «Возврат значения из метода». Учебники по Java. Sun Microsystems, Inc. 14 февраля 2008 г.. Получено 2008-12-03.
- ^ а б c d е ж грамм час я Фланаган 2005 С. 66-67.
- ^ а б c "Заявление о переключении". Учебники по Java. Sun Microsystems, Inc. 14 февраля 2008 г.. Получено 2014-12-18.
- ^ а б c Фланаган 2005 С. 46-48.
- ^ а б "Заявления пока и что делать, пока". Учебники по Java. Sun Microsystems, Inc. 14 февраля 2008 г.. Получено 2008-12-03.
- ^ а б Фланаган 2005 С. 48-49.
- ^ а б "Утверждения if-then и if-then-else". Учебники по Java. Sun Microsystems, Inc. 14 февраля 2008 г.. Получено 2008-12-03.
- ^ а б Фланаган 2005 С. 44-46.
- ^ а б "Заявление за". Учебники по Java. Sun Microsystems, Inc. 14 февраля 2008 г.. Получено 2008-12-03.
- ^ Фланаган 2005 С. 50-54.
- ^  https://docs.oracle.com/en/java/javase/15/docs/specs/sealed-classes-jls.html#jls. Отсутствует или пусто | название =(помощь)
- ^ а б c «Контроль доступа к членам класса». Учебники по Java. Sun Microsystems, Inc. 14 февраля 2008 г.. Получено 2008-12-03.
- ^ "Спецификация сериализации объектов Java версии 1.5.0". Солнце / Оракул. 2004. 1.5 Определение сериализуемых полей для класса.. Получено 2010-09-16.[постоянная мертвая ссылка ]
- ^ Гроссо, Уильям (21 ноября 2001 г.). «Java RMI: сериализация». ONJava. O'Reilly Media. Объявление serialPersistentFields. Получено 2010-09-16.
- ^ "Изменчивое ключевое слово Java".
- ^  https://docs.oracle.com/en/java/javase/15/docs/specs/sealed-classes-jls.html#jls. Отсутствует или пусто | название =(помощь)
- ^  https://docs.oracle.com/en/java/javase/15/docs/specs/sealed-classes-jls.html#jls. Отсутствует или пусто | название =(помощь)
- ^ «Глава 3. Лексическая структура». docs.oracle.com. Получено 2018-12-25.
- ^ а б Фланаган 2005, п. 20.
внешняя ссылка
- Гослинг, Джеймс; Радость, Билл; Стил, парень; Браха, Гилад (Июнь 2005 г.). Спецификация языка Java (Третье изд.). Эддисон-Уэсли Профессиональный. ISBN 978-0-321-24678-3. Получено 2008-12-03.
- Фланаган, Дэвид (Март 2005 г.). Java в двух словах (Пятое изд.). O'Reilly Media. ISBN 978-0-596-00773-7. Получено 2010-03-03.
