异常处理

Table of Contents

1 捕获异常

// 表达式:
try {

} catch {
  case ex: SomeExcetion => …
  case e: Exception => …
}

// 示例:
import java.io.FileReader
import java.io.FileNotFoundException

try {
  val f = new FileReader("xxx")
} catch {
  case ex: FileNotFoundException => println("Not found file")
}

// finally 关键字,不管出不出异常,都会执行 finally 中的代码:
import java.io.FileReader

val f = new FileReader("/etc/passwd")
try {
} finally {
  f.close()
}

// throw 可以主动触发一个异常:
throw new RuntimeException("Error")