Scala提供关键字 throws 关键字来声明一个异常。throws 可以实现在定义方法得时候同时定义异常。这样就可以实现让函数得调用者在try语句块里运行函数得时候,如果有异常,就会抛出throws里定义得异常类型。那么在catch语句块中可以根据函数上面得throws得异常类型来接收异常并处理异常。
class ExceptionExample3 { 等throws(classOf[NumberFormatException]) def validate() = { "abc".toInt }}object _31_Try_Catch { def main(args: Array[String]): Unit = { var e = new ExceptionExample3() try { e.validate() } catch { case ex: NumberFormatException => println("遇到异常并进行处理") } finally { println("程序运行完毕") } }}
遇到异常并进行处理程序运行完毕
这个例子中,定义函数validate函数定义时定义了异常 NumberFormatException,那么当validate函数运行时有了异常,就会抛出throws关键字里定义得异常类型。在catch里通过相同类型得NumberFormatException来接收异常并进行处理。这里得处理方式比较简单,就是输出一段话。






