有經驗的碼農都知道,程序開發的差很少的時候,爲了提升程序的穩健性,是必定要加上異常處理機制的spa
在scala中,用try/catch/finally實現該功能,這個在個人博客,數字轉漢字小工具中有體現,這裏給出一個簡單的例子scala
try { println("運行try") } catch { case e: Exception => { println("獲取異常信息") } } finally{ println("try結束後的處理,如關閉鏈接") }
如該示例,要注意的是:blog
一、try中放運行代碼,而且因爲try是一個封閉的結構,try以外不能得到try以內的變量開發
二、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)
三、try運行完後,不管是否異常都會運行finallyio
四、使用try異常處理機制的一個重要理由是,當有異常出現時,程序會跳過try繼續運行下去,不會就此中斷,有效提升了程序的穩健性class