例如,如果从Scala源文件调用抛出已检查Thread.sleep
的Java InterruptedException
,则不需要在Scala try catch
中包围该调用。 Scala如何删除规则以围绕try catch
中的呼叫?
答案 0 :(得分:6)
简短的回答是Scala直接编译为JVM字节码,而不是通过Java。因此,它只对JVM字节码规则感兴趣,而不是Java规则(事实上Scala完全省略了已检查的异常),尽管出于互操作的目的,它可能会保留许多Java概念。
至于为什么生成的字节码可以跳过原始检查的异常,请参阅this question。