Блокtry
. Блок, начинаемый ключевым словом try
и содержащий один или несколько разделов catch
. Если код в блоке try
передаст исключение, а один из разделов catch
соответствует типу этого исключения, то исключение будет обработано кодом данного обработчика. В противном случае исключение будет обработано во внешнем блоке try
, но если и этого не произойдет, сработает функция terminate()
, которая и завершит выполнение программы.
Блок (block). Последовательность любого количества операторов, заключенная в фигурные скобки. Блок операторов может быть использован везде, где ожидается один оператор.
Директиваcatch
(catch
clause). Состоит из ключевого слова catch
, объявления исключения в круглых скобках и блока операторов. Код в разделе catch
предназначен для обработки исключения, тип которого указан в объявлении.
Класс исключения (exception class). Набор определенных стандартной библиотекой классов, используемых для сообщения об ошибке. Универсальные классы исключений см. в табл. 5.1.
Меткаcase
. Константное выражение (см. раздел 2.4.4), следующее за ключевым словом case
в операторе switch
. Метки case
в том же операторе switch
не могут иметь одинакового значения.
Меткаdefault
. Метка оператора switch
, соответствующая любому значению условия, не указанному в метках case
явно.
Обработчик исключения (exception handler). Код, реагирующий на исключение определенного типа, переданное из другой части программы. Синоним термина catch
.
Объявление исключения (exception declaration). Объявление в разделе catch
. Определяет тип исключений, обрабатываемых данным обработчиком.
Операторbreak
. Завершает ближайший вложенный цикл или оператор switch
. Передает управление первому оператору после завершенного цикла или оператора switch
.
Операторcontinue
. Завершает текущую итерацию ближайшего вложенного цикла. Передает управление условию цикла while
, оператору do
или выражению в заголовке цикла for
.
Операторdo while
. Подобен оператору while
, но условие проверяется в конце цикла, а не в начале. Тело цикла выполняется по крайней мере однажды.
Операторfor
. Оператор цикла, обеспечивающий итерационное выполнение. Зачастую используется для повторения вычислений определенное количество раз.
Серийный операторfor
(range for
). Управляющий оператор, перебирающий значения указанной коллекции и выполняющий некую операцию с каждым из них.
Операторgoto
. Оператор, осуществляющий безусловную передачу управления помеченному оператору в другом месте той же функции. Операторы goto
нарушают последовательность выполнения операций программы, поэтому их следует избегать.
Операторif
. Условное выполнение кода на основании значения в условии. Если условие истинно (значение true
), тело оператора if
выполняется, в противном случае управление переходит к оператору, следующему после него.
Операторif...else
. Условное выполнение кода в разделе if
или else
, в зависимости от истинности значения условия.
Операторswitch
. Оператор условного выполнения, который сначала вычисляет результат выражения, следующего за ключевым словом switch
, а затем передает управление разделу case
, метка которого совпадает с результатом выражения. Когда соответствующей метки нет, выполнение переходит к разделу default
(если он есть) или к оператору, следующему за оператором switch
, если раздела default
нет.
Операторthrow
. Оператор, прерывающий текущий поток выполнения. Каждый оператор throw
передает объект, который переводит управление на ближайший раздел catch
, способный обработать исключение данного класса.
Операторwhile
. Оператор цикла, который выполняет оператор тела до тех пор, пока условие остается истинным (значение true
). В зависимости от истинности значения условия оператор выполняется любое количество раз.
Оператор выражения (expression statement). Выражение завершается точкой с запятой. Оператор выражения обеспечивает выполнение действий в выражении.
Передача (raise, throwing). Выражение, которое прерывает текущий поток выполнения. Каждый оператор throw
передает объект, переводящий управление на ближайший раздел catch
, способный обработать исключение данного класса.
Помеченный оператор (labeled statement). Оператор, которому предшествует метка.