Jump to content

Список ключевых слов Java

Фрагмент кода Java с ключевыми словами, выделенными синим жирным шрифтом.

В языке программирования Java ключевым словом является любое из 68 зарезервированных слов. [1] которые имеют заранее определенное значение в языке. Из-за этого программисты не могут использовать ключевые слова в некоторых контекстах, например, в качестве имен переменных , методов , классов или в качестве любого другого идентификатора . [2] Из этих 68 ключевых слов 17 зарезервированы только контекстно и иногда могут использоваться в качестве идентификатора, в отличие от стандартных зарезервированных слов. Из-за своих особых функций в языке большинство интегрированных сред разработки для Java используют подсветку синтаксиса для отображения ключевых слов другим цветом для облегчения идентификации.

Список ключевых слов Java

[ редактировать ]
_
Добавленное в Java 9 подчеркивание стало ключевым словом и больше не может использоваться в качестве имени переменной. [3]
abstract
Метод без определения должен быть объявлен как абстрактный, а содержащий его класс должен быть объявлен как абстрактный. Абстрактные классы не могут быть созданы. Абстрактные методы должны быть реализованы в подклассах. Ключевое слово абстрактное нельзя использовать с переменными или конструкторами. Обратите внимание, что абстрактный класс вообще не обязан иметь абстрактный метод.
assert (добавлено в J2SE 1.4 ) [4]
Assert описывает предикат (утверждение «истина-ложь»), помещенный в программу Java, чтобы указать, что разработчик считает, что в этом месте предикат всегда истинен. Если во время выполнения утверждение оценивается как ложное, происходит сбой утверждения, что обычно приводит к прерыванию выполнения. По умолчанию утверждения отключены во время выполнения, но их можно включить с помощью параметра командной строки или программно с помощью метода загрузчика классов.
boolean
Определяет логическую переменную только для значений «истина» или «ложь». По умолчанию значение логического примитивного типа равно false. Это ключевое слово также используется для объявления того, что метод возвращает значение примитивного типа. boolean.
break
Используется для завершения выполнения в текущем теле цикла.
Используется, чтобы вырваться из switch блокировать.
byte
The byte Ключевое слово используется для объявления поля, которое может содержать 8-битное целое число со знаком, дополненное до двух. [5] [6] Это ключевое слово также используется для объявления того, что метод возвращает значение примитивного типа. byte. [7] [8]
case
Заявление в switch блок может быть помечен одним или несколькими case или default этикетки. switch оператор оценивает свое выражение, затем выполняет все операторы, следующие за соответствующим выражением case этикетка; видеть switch. [9] [10]
catch
Используется совместно с try блок и опционально finally блокировать. Заявления в catch блок определяет, что делать, если блок выдает исключение определенного типа. try блокировать.
char
Определяет символьную переменную, способную хранить любой символ из набора символов исходного файла Java.
class
Тип, определяющий реализацию объекта определенного типа. Определение класса определяет экземпляра и класса поля , методы и внутренние классы , а также определяет интерфейсы, которые реализует класс, и непосредственный суперкласс класса. Если суперкласс не указан явно, суперкласс указывается неявно. Object. Ключевое слово class также можно использовать в форме Class.class для получения объекта Class без необходимости использования экземпляра этого класса. Например, можно использовать String.class вместо выполнения new String().getClass() () .
continue
Используется для возобновления выполнения программы в конце тела текущего цикла. Если за ним следует метка, continue возобновляет выполнение в конце помеченного тела цикла.
default
The default Ключевое слово может опционально использоваться в операторе переключения для обозначения блока операторов, который будет выполнен, если нет case соответствует указанному значению; видеть switch. [9] [10] Альтернативно, default Ключевое слово также можно использовать для объявления значений по умолчанию в аннотации Java . Начиная с Java 8, default Ключевое слово можно использовать, чтобы позволить интерфейсу обеспечить реализацию метода.
do
The do Ключевое слово используется вместе с while создать цикл do- while , который выполняет блок операторов, связанных с циклом, а затем проверяет логическое выражение, связанное с while. Если выражение оценивается как true, блок выполняется снова; это продолжается до тех пор, пока выражение не примет значение false. [11] [12]
double
The double Ключевое слово используется для объявления переменной, которая может содержать 64-битное двойной точности IEEE 754 число с плавающей запятой . [5] [6] Это ключевое слово также используется для объявления того, что метод возвращает значение примитивного типа. double. [7] [8]
else
The else Ключевое слово используется вместе с if создать оператор if-else , который проверяет логическое выражение ; если выражение оценивается как true, блок операторов, связанный с if оцениваются; если он оценивается как false, блок операторов, связанный с else оцениваются. [13] [14]
enum (добавлено в J2SE 5.0 ) [4]
Ключевое слово Java, используемое для объявления перечислимого типа . Перечисления расширяют базовый класс Enum.
extends
Используется в объявлении класса для указания суперкласса; используется в объявлении интерфейса для указания одного или нескольких суперинтерфейсов. Класс X расширяет класс Y для добавления функциональности либо путем добавления полей или методов в класс Y, либо путем переопределения методов класса Y. Интерфейс Z расширяет один или несколько интерфейсов путем добавления методов. Говорят, что класс X является подклассом класса Y; Говорят, что интерфейс Z является подинтерфейсом интерфейсов, которые он расширяет.
Также используется для указания верхней границы параметра типа в Generics.
final
Определите сущность один раз, которую нельзя будет изменить или получить из нее позже. Более конкретно: конечный класс не может быть подклассом, конечный метод не может быть переопределен, а конечная переменная может встречаться не более одного раза как левое выражение в выполняемой команде. Все методы в конечном классе неявно final.
finally
Используется для определения блока операторов для блока, определенного ранее try ключевое слово. finally блок выполняется после завершения выполнения try блок и все связанные с ним catch предложений независимо от того, было ли исключение или перехвачено, или выполнение оставило метод в середине try или catch блоки с помощью return ключевое слово.
float
The float Ключевое слово используется для объявления переменной, которая может содержать 32-битное одинарной точности IEEE 754. число с плавающей запятой [5] [6] Это ключевое слово также используется для объявления того, что метод возвращает значение примитивного типа. float. [7] [8]
for
The for Ключевое слово используется для создания цикла for , который определяет инициализацию переменной, логическое выражение и приращение. Сначала выполняется инициализация переменной, а затем вычисляется логическое выражение. Если выражение оценивается как true, выполняется блок операторов, связанный с циклом, а затем выполняется приращение. Затем логическое выражение оценивается снова; это продолжается до тех пор, пока выражение не примет значение false. [15]
Начиная с J2SE 5.0 , for Ключевое слово также можно использовать для создания так называемого « расширенного цикла for », [16] который определяет массив или Iterable объект; каждая итерация цикла выполняет соответствующий блок операторов, используя другой элемент массива или Iterable. [15]
if
The if Ключевое слово используется для создания оператора if , который проверяет логическое выражение ; если выражение оценивается как true, выполняется блок операторов, связанный с оператором if. Это ключевое слово также можно использовать для создания оператора if-else ; видеть else. [13] [14]
implements
Включен в объявление класса для указания одного или нескольких интерфейсов , реализуемых текущим классом. Класс наследует типы и абстрактные методы, объявленные интерфейсами.
import
Используется в начале исходного файла для указания классов или целых пакетов Java , к которым необходимо обращаться позже, без включения в ссылку имен их пакетов. Начиная с J2SE 5.0, import заявления могут импортировать static члены класса.
instanceof
Бинарный оператор , который принимает ссылку на объект в качестве первого операнда и класс или интерфейс в качестве второго операнда и выдает логический результат. instanceof Оператор оценивается как true тогда и только тогда, когда тип времени выполнения объекта совместим по назначению с классом или интерфейсом.
int
The int Ключевое слово используется для объявления переменной, которая может содержать 32-битное целое число со знаком, дополненное до двух. [5] [6] Это ключевое слово также используется для объявления того, что метод возвращает значение примитивного типа. int. [7] [8]
interface
Используется для объявления специального типа класса, который содержит только абстрактные методы или методы по умолчанию, константу ( static final) поля и static интерфейсы. Позже это может быть реализовано с помощью классов, которые объявляют интерфейс с implements ключевое слово. Поскольку в Java не допускается множественное наследование , для его обхода используются интерфейсы. Интерфейс может быть определен внутри другого интерфейса.
long
The long Ключевое слово используется для объявления переменной, которая может содержать 64-битное целое число со знаком, дополненное до двух. [5] [6] Это ключевое слово также используется для объявления того, что метод возвращает значение примитивного типа. long. [7] [8]
native
Используется в объявлениях методов, чтобы указать, что метод реализован не в том же исходном файле Java, а на другом языке. [8]
new
Используется для создания экземпляра объекта класса или массива. Использование ключевого слова для этой цели не является абсолютно необходимым (как показано на Scala ), хотя оно служит двум целям: оно обеспечивает существование разных пространств имен для методов и имен классов, оно определяет статически и локально, что действительно создается новый объект, и какой это тип среды выполнения (возможно, внесение зависимости в код).
package
Пакет Java представляет собой группу схожих классов и интерфейсов. Пакеты объявляются с помощью package ключевое слово.
private
The private Ключевое слово используется в объявлении метода, поля или внутреннего класса; Доступ к частным членам могут получить только другие члены их собственного класса. [17]
protected
The protected Ключевое слово используется в объявлении метода, поля или внутреннего класса; Доступ к защищенным членам могут получить только члены их собственного класса, подклассов этого класса или классов из того же пакета . [17]
public
The public ключевое слово используется в объявлении класса, метода или поля; открытые классы, методы и поля могут быть доступны членам любого класса. [17]
return
Используется для завершения выполнения метода. За ним может следовать значение, требуемое определением метода, которое возвращается вызывающей стороне.
short
The short Ключевое слово используется для объявления поля, которое может содержать 16-битное целое число со знаком, дополненное до двух. [5] [6] Это ключевое слово также используется для объявления того, что метод возвращает значение примитивного типа. short. [7] [8]
static
Используется для объявления поля, метода или внутреннего класса как поля класса. Классы поддерживают одну копию полей класса независимо от того, сколько экземпляров этого класса существует. static также используется для определения метода как метода класса. Методы класса привязаны к классу, а не к конкретному экземпляру, и могут работать только с полями класса. Классы и интерфейсы, объявленные как static члены другого класса или интерфейса являются поведенчески классами верхнего уровня. [18]
super
Наследование в основном используется для достижения динамического связывания или полиморфизма во время выполнения в Java. Используется для доступа к членам класса, унаследованного классом, в котором он присутствует. Позволяет подклассу получать доступ к переопределенным методам и скрытым членам своего суперкласса. super Ключевое слово также используется для пересылки вызова от конструктора к конструктору суперкласса.
Также используется для указания нижней границы параметра типа в Generics.
switch
The switch Ключевое слово используется вместе с case и default создать оператор переключения , который оценивает переменную, сопоставляет ее значение с определенным caseи выполняет блок операторов, связанных с этим case. Если нет case соответствует значению, дополнительный блок, помеченный default выполняется, если он включен. [9] [10]
synchronized
Используется в объявлении метода или блока кода для получения блокировки мьютекса для объекта, пока текущий поток выполняет код. [8] Для статических методов заблокированный объект — это объект класса. Class. Гарантирует, что не более одного потока, работающего с одним и тем же объектом, выполняет этот код. Блокировка мьютекса автоматически снимается при выходе из синхронизированного кода. Поля, классы и интерфейсы не могут быть объявлены как синхронизированные .
this
Используется для представления экземпляра класса, в котором он появляется. this может использоваться для доступа к членам класса и в качестве ссылки на текущий экземпляр. this Ключевое слово также используется для перенаправления вызова от одного конструктора класса к другому конструктору того же класса.
throw
Вызывает создание объявленного экземпляра исключения. Это приводит к продолжению выполнения с первым обработчиком исключений, объявленным catch ключевое слово для обработки типа исключения, совместимого с назначением. Если такой обработчик исключений не найден в текущем методе, метод возвращается, и процесс повторяется в вызывающем методе. Если ни в одном вызове метода в стеке не найден обработчик исключений, то исключение передается обработчику неперехваченных исключений потока.
throws
Используется в объявлениях методов, чтобы указать, какие исключения не обрабатываются внутри метода, а передаются на следующий более высокий уровень программы. Все неперехваченные исключения в методе, которые не являются экземплярами RuntimeException должен быть объявлен с использованием throws ключевое слово.
transient
Объявляет, что поле экземпляра не является частью сериализованной формы объекта по умолчанию. Когда объект сериализуется, в серийное представление по умолчанию включаются только значения его непереходных полей экземпляра. Когда объект десериализуется, временные поля инициализируются только значениями по умолчанию. Если форма по умолчанию не используется, например, когда таблица SerialPersistentFields объявлена ​​в иерархии классов, все transient ключевые слова игнорируются. [19] [20]
try
Определяет блок операторов, имеющих обработку исключений. Если исключение генерируется внутри try блок, опционально catch блок может обрабатывать объявленные типы исключений. Кроме того, необязательно finally может быть объявлен блок, который будет выполняться при выходе из выполнения try блокировать и catch предложений, независимо от того, создано исключение или нет. А try блок должен иметь хотя бы один catch пункт или finally блокировать.
void
The void Ключевое слово используется для объявления того, что метод не возвращает никакого значения. [7]
volatile
Используется в объявлениях полей, чтобы гарантировать видимость изменений переменных в потоках. Каждое чтение энергозависимой переменной будет считываться из основной памяти, а не из кэша ЦП, и каждая запись в энергозависимую переменную будет записываться в основную память, а не только в кэш ЦП. [21] Таким образом, методы, классы и интерфейсы не могут быть объявлены изменчивыми , равно как и локальные переменные или параметры.
while
The while Ключевое слово используется для создания цикла while , который проверяет логическое выражение и выполняет блок операторов, связанных с циклом, если выражение оценивается как true; это продолжается до тех пор, пока выражение не примет значение false. Это ключевое слово также можно использовать для создания цикла do- while ; видеть do. [11] [12]

Зарезервированные идентификаторы

[ редактировать ]

Следующие идентификаторы являются контекстными ключевыми словами и ограничены только в некоторых контекстах:

exports

module

non-sealed
Используется для объявления того, что класс или интерфейс, расширяющий запечатанный класс, может быть расширен неизвестными классами. [22]
open
opens
permits
В разделе разрешений указаны классы, которым разрешено расширять запечатанный класс. [22]
provides
record

requires

sealed
Запечатанный класс или интерфейс могут быть расширены или реализованы только классами и интерфейсами, которым разрешено это делать. [22]
to
transitive
uses
var
Специальный идентификатор, который нельзя использовать в качестве имени типа (начиная с Java 10). [23]
when
используется в качестве дополнительной проверки case заявление. [24]
with
yield
Используется для установки значения для выражения переключателя при использовании помеченных групп операторов (например, case L:). [25]

Зарезервированные слова для буквальных значений

[ редактировать ]
true
Логическое буквальное значение.
false
Логическое буквальное значение.
null
Ссылочное буквальное значение.

Неиспользованный

[ редактировать ]
const
Хотя в Java оно зарезервировано как ключевое слово, const не используется и не имеет никакой функции. [2] [26] Для определения констант в Java см. final ключевое слово.
goto
Хотя в Java оно зарезервировано как ключевое слово, goto не используется и не имеет никакой функции. [2] [26]
strictfp (добавлено в J2SE 1.2 ) [4]
Хотя в Java оно зарезервировано как ключевое слово, strictfp устарел и больше не имеет никакой функции. [27] Ранее это ключевое слово использовалось для ограничения точности и округления вычислений с плавающей запятой для обеспечения переносимости. [8]

См. также

[ редактировать ]
  1. ^ «Платформа Java, Справочник по Java API стандартной версии» .
  2. ^ Jump up to: а б с «Спецификация языка Java. Раздел 3.9: Ключевые слова» . Спецификация языка Java . Оракул . 21 августа 2018 г. Проверено 25 декабря 2018 г.
  3. ^ «Лечение подчеркиваний» . JEP 302: Остатки лямбды .
  4. ^ Jump up to: а б с «Ключевые слова языка Java» . Учебники по Java . Сан Микросистемс, Инк . Проверено 24 июля 2017 г.
  5. ^ Jump up to: а б с д и ж «Примитивные типы данных» . Учебники по Java . Sun Microsystems, Inc., 14 февраля 2008 г. Проверено 3 декабря 2008 г.
  6. ^ Jump up to: а б с д и ж Фланаган 2005 , с. 22.
  7. ^ Jump up to: а б с д и ж г «Возврат значения из метода» . Учебники по Java . Sun Microsystems, Inc., 14 февраля 2008 г. Проверено 3 декабря 2008 г.
  8. ^ Jump up to: а б с д и ж г час я Фланаган 2005 , стр. 66–67.
  9. ^ Jump up to: а б с «Заявление о переключении» . Учебники по Java . Sun Microsystems, Inc., 14 февраля 2008 г. Проверено 18 декабря 2014 г.
  10. ^ Jump up to: а б с Фланаган 2005 , стр. 46–48.
  11. ^ Jump up to: а б «Операторы while и do- while» . Учебники по Java . Sun Microsystems, Inc., 14 февраля 2008 г. Проверено 3 декабря 2008 г.
  12. ^ Jump up to: а б Фланаган 2005 , стр. 48–49.
  13. ^ Jump up to: а б «Утверждения if-then и if-then-else» . Учебники по Java . Sun Microsystems, Inc., 14 февраля 2008 г. Проверено 3 декабря 2008 г.
  14. ^ Jump up to: а б Фланаган 2005 , стр. 44–46.
  15. ^ Jump up to: а б «Для заявления» . Учебники по Java . Sun Microsystems, Inc., 14 февраля 2008 г. Проверено 3 декабря 2008 г.
  16. ^ Фланаган 2005 , стр. 50–54.
  17. ^ Jump up to: а б с «Контроль доступа к членам класса» . Учебники по Java . Sun Microsystems, Inc., 14 февраля 2008 г. Проверено 3 декабря 2008 г.
  18. ^ https://docs.oracle.com/javase/tutorial/java/javaOO/nested.html
  19. ^ «Спецификация сериализации объектов Java версии 1.5.0» . Солнце/Оракул. 2004. 1.5 Определение сериализуемых полей для класса . Проверено 16 сентября 2010 г. [ постоянная мертвая ссылка ]
  20. ^ Гроссо, Уильям (21 ноября 2001 г.). «Java RMI: сериализация» . ONJava . О'Рейли Медиа. Объявление SerialPersistentFields . Проверено 16 сентября 2010 г.
  21. ^ «Изменчивое ключевое слово Java» .
  22. ^ Jump up to: а б с «Закрытые классы» . docs.oracle.com . Корпорация Оракл . Проверено 7 августа 2021 г.
  23. ^ «Глава 3. Лексическая структура» . docs.oracle.com . Проверено 25 декабря 2018 г.
  24. ^ «Глава 14. Блоки, операторы и шаблоны» .
  25. ^ «Переключение выражений» . docs.oracle.com . Корпорация Оракл . Проверено 27 декабря 2020 г.
  26. ^ Jump up to: а б Фланаган 2005 , с. 20.
  27. ^ «JEP 306: восстановить всегда строгую семантику с плавающей запятой» .
[ редактировать ]


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 2254c44abcf39c89b79aebb643e4e513__1722209220
URL1:https://arc.ask3.ru/arc/aa/22/13/2254c44abcf39c89b79aebb643e4e513.html
Заголовок, (Title) документа по адресу, URL1:
List of Java keywords - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)