Scala 中异常的处理
1、java
-
运行时异常,可以不用提前处理,将来运行时候可能抛异常
-
受检异常(checked) 在编译阶段,异常必须被处理,try、抛出异常类型 throws 异常类
2、scala
3、 如何处理异常:
- 1.抛出异常 (throws)
- 2.try
- 3.抛出异常对象 (throw new )
object ExceptionDemo1 {
def main(args: Array[String]): Unit = {
val j = StdIn.readInt()j
if(j == 0)throw new ArithmeticException("除数不能是0")
try{
var i = 1/0
foo()
}catch{
case e: ArithmeticException =>
println("发生算术异常")
case e: Exception =>
println("发生异常")
case _ =>
}finally {
//不管有没有异常都会走这里
println("释放资源")
}
println("aaa")
}
@throws(classOf[RuntimeException])
@throws(classOf[IOException])
def foo() = {
println("aaaa")
}
}