scala 异常处理机制

    有经验的码农都知道,程序开发的差不多的时候,为了提高程序的稳健性,是一定要加上异常处理机制的

    在scala中,用try/catch/finally实现该功能,这个在我的博客,数字转汉字小工具中有体现,这里给出一个简单的例子

try {
  println("运行try")
}
catch {
  case e: Exception => {
    println("获取异常信息")
  }
}
finally{
  println("try结束后的处理,如关闭连接")
}

  如该示例,要注意的是:

1、try中放运行代码,并且由于try是一个封闭的结构,try之外不能获得try之内的变量

2、catch是用来获取异常的,示例是中给出的是模式匹配所有异常信息,除此之外还可以匹配特定的异常,比如

case ex: FileNotFoundException => println("file is missing !")
case ex: IOException =>println("I/O error !")
case e: NullPointerException => println("One was null!")
case unknown => println("Unknown exception " + unknown)

3、try运行完后,无论是否异常都会运行finally

4、使用try异常处理机制的一个重要理由是,当有异常出现时,程序会跳过try继续运行下去,不会就此中断,有效提高了程序的稳健性

posted @ 2017-05-10 14:20  horseman  阅读(3762)  评论(0编辑  收藏  举报