НОВИНКА!
Занимательная математика от Трепачёва. Присоединяйтесь к нам!
1295 of 1310 menu

Оператор throw

Оператор throw позволяет вручную создать и выбросить исключение в Kotlin. При выполнении этого оператора нормальный поток выполнения программы прерывается, и управление передается ближайшему блоку catch, который может обработать данное исключение. Если подходящий блок не найден, программа завершается с ошибкой.

Синтаксис

throw Exception(message: String?)

Где Exception - это тип исключения (может быть любым классом, унаследованным от Throwable), а message - необязательное сообщение об ошибке.

Пример

Простой пример генерации исключения:

fun checkAge(age: Int) { if (age < 0) { throw IllegalArgumentException("Age cannot be negative") } println("Age is $age") } checkAge(-5)

Результат выполнения кода:

Exception in thread "main" java.lang.IllegalArgumentException: Age cannot be negative

Пример

Создание и выброс собственного исключения:

class MyException(message: String) : Exception(message) fun process(value: Int) { if (value > 100) { throw MyException("Value is too large") } println("Processing value: $value") } process(150)

Результат выполнения кода:

Exception in thread "main" MyException: Value is too large

Пример

Использование throw в выражении:

val result = if (true) { "Success" } else { throw RuntimeException("Failure") } println(result)

Результат выполнения кода:

String "Success"

Пример

Перехват исключения с помощью try-catch:

try { throw ArithmeticException("Division by zero") } catch (e: ArithmeticException) { println("Caught exception: ${e.message}") }

Результат выполнения кода:

String "Caught exception: Division by zero"

Смотрите также

  • блок try,
    который позволяет перехватывать и обрабатывать исключения
  • блок finally,
    который выполняется независимо от того, было исключение или нет
  • функцию require,
    которая проверяет условие
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить