Назад к вопросам
JuniorТеорияЧасто
Что выведет программа (строки через пробел)?
fun main() {
try {
println("a")
"x".toInt()
println("b")
} catch (e: NumberFormatException) {
println("c")
} finally {
println("d")
}
}a c d
- Ждать
a b c d: считать, что после исключения остатокtryвсё равно выполнится. Исключение сразу переходит в подходящийcatch, поэтомуbне печатается. - Ждать
a c: считать, чтоfinallyвыполняется, только если всё прошло без ошибок. Он выполняется всегда — послеtryили послеcatch, поэтомуdтоже печатается.
- Что выведет программа, если заменить текст
"x"на"7"? - Что произойдёт, если в
catchуказатьIllegalStateException?