Лучшее руководство по Scala Обработка исключений в 2024 году. В этом руководстве вы можете изучить Сгенерирует исключение,Поймать исключение,наконец, заявление,
Scala Обработка исключений
обработка исключений Scala и других подобных языков, таких как Java.
Способ Scala может бросить исключение путем способа прекратить соответствующий код, без прохождения через возвращаемого значения.
Сгенерирует исключение
Scala и Java-методы генерируют исключения, использование методов броска, например, бросить новые параметры исключения:
throw new IllegalArgumentException
Поймать исключение
Аномальный механизм захвата с другими языками, если происходит исключение, ловить слова последовательно захвачены. Таким образом, по словам улове, тем более определенное исключение в большей степени полагаться до и после того, как более распространенные нарушения более надежными. Если исключение не улавливает слова, исключение не будет обрабатываться и будет повышен до вызываемым.
оговорка поймать Поймать исключение, грамматика и другие языки не являются одинаковыми. В Scala, заимствованные идеи сделать по шаблону, чтобы соответствовать исключение, так что код улова, случай представляет собой ряд слов, как в этом примере:
import java.io.FileReader import java.io.FileNotFoundException import java.io.IOException object Test { def main(args: Array[String]) { try { val f = new FileReader("input.txt") } catch { case ex: FileNotFoundException =>{ println("Missing file exception") } case ex: IOException => { println("IO Exception") } } } }
Реализация указанного выше кода, выход:
$ scalac Test.scala $ scala Test Missing file exception
крылатую фразу в содержании с матча в случае точно такой же. Поскольку обработка исключений в последовательности, если наиболее распространенной аномалией, Throwable, написанный на фронте, в задней части корпуса, которые не поймать, так что вам нужно записать его в последнюю очередь.
наконец, заявление
наконец, оператор используется для выполнения либо нормальную обработку или должны быть выполнены шаги, при возникновении исключения, примеры являются следующие:
import java.io.FileReader import java.io.FileNotFoundException import java.io.IOException object Test { def main(args: Array[String]) { try { val f = new FileReader("input.txt") } catch { case ex: FileNotFoundException => { println("Missing file exception") } case ex: IOException => { println("IO Exception") } } finally { println("Exiting finallyru.") } } }
Реализация указанного выше кода, выход:
$ scalac Test.scala $ scala Test Missing file exception Exiting finallyru.