与Java不同,Scala允许您在没有catch或finally子句的情况下进行"尝试":
scala> try { println("Foo") }
Foo
Run Code Online (Sandbox Code Playgroud)
这实际上是否有任何意义,
{ println("Foo") }
Run Code Online (Sandbox Code Playgroud)
?
Dan*_*ood 29
Scala的异常处理通过将任何异常传递给匿名catch函数来实现.catch函数通过模式匹配捕获的异常来工作,如果它不匹配,它将向上传递异常.
catch函数是可选的,如果省略则会直接传递异常.所以基本上
try { exceptionThrowingFunction() }
Run Code Online (Sandbox Code Playgroud)
是相同的
exceptionThrowingFunction()
Run Code Online (Sandbox Code Playgroud)
有关详细信息,请参阅语言规范 pdf的第6.22章.
| 归档时间: |
|
| 查看次数: |
4367 次 |
| 最近记录: |