为什么不支持声明的例外

时间:2014-01-26 00:23:59

标签: dart

在dart中的方法/函数签名中不允许异常声明背后的动机是什么?允许程序员在方法签名中声明异常然后检查这些异常是否在已检查模式中传播或捕获(使用 catch 块)不是更好有点像在java)?我确信飞镖的设计者有充分的理由做出决定,如果他们能用这些信息启发飞镖的使用者,那就太棒了。

更新:我已经阅读了很多关于dartlang.org的文章,似乎有一个非常精确,明确的理由几乎所有的飞镖设计决定。所以我相信这个问题有一个正确的答案,因此它不应该引发辩论。

1 个答案:

答案 0 :(得分:3)

Java在严格处理异常方面是独一无二的。 (C ++有类似的东西,但它是可选的,它的工作方式不同。)

Python,Javascript,甚至基于Java的Scala和Groovy都没有订阅这种异常类型的处理。

基本上,它增加了很少获得的样板。实际上,大多数异常都是越界,空指针等(在浏览器中尤其如此,其中文件I / O和其他错误不太常见。)这些异常几乎可以在任何地方发生。