为什么要有特定于项目的RuntimeException?

TimP:

com.myco.myproj.MyProjRuntimeException有什么意义,哪个completley扩展了RuntimeException?

尤瓦尔·亚当(Yuval Adam):

是。不要抛出未经检查的异常,并将其子类化。

关于受检查的异常是否真的有用,有很多讨论。简而言之,如果我抛出一个检查异常,我的客户真的与它有任何关系吗?

未检查的异常是通知您的客户异常情况(包括非法先决条件)的一种好方法,但又不会使他们负担使用try-catch块包装对API的调用的负担,在大多数情况下,这些调用基本上没有用,而不是调试,跟踪等。

那么为什么不扔一个RuntimeException呢?它不优雅可读性较差使它成为您自己的派生异常,即使抛出异常时没有其他原因,也没有其他原因。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Intellij不使用特定于项目的Maven settings.xml文件

会话特定于什么?为什么不将IP和域名会话视为相同?

为什么我没有被列为合并我的PR的项目的贡献者?

更新buildroot中特定于项目的软件包

在Realm中使用特定于项目的ViewModel的最佳方法是什么?

为什么要有请求模型?

为什么首先要有抽象类?

为什么在将新项目插入0索引时每次触发所有列表项目的“ initState()”方法?

如何将跨所有项目运行的GCP Cloud Shell命令与特定于一个项目的命令结合在一起?

为什么kubernetes需要有2个coredns pod

SQL Server全局阻止列表和特定于项目的允许列表

我如何获得Clojure在REPL启动时加载特定于项目的.clj文件?

为什么“特定于连接的DNS后缀”仅(默认)可用于有线连接,而不能用于无线

什么不是特定于外壳的?

什么是特定于实例的错误

特定于项目的SBT JVM选项:在jenkins中

为什么pygame的键码是特定于OS的?

如果具有特定于常量的方法,为什么要为每种枚举类型创建不同的类文件?

为什么使用时库存中项目的堆叠大小没有变化?

为什么var目录不是特定于用户的?

需要有关如何制作具有不同项目的列表,将其绑定到ListView的指示

为什么要有644个文件权限?

为什么MonadIO特定于IO,而不是更通用的MonadTrans?

为什么ArrayStoreException是RuntimeException?

什么是特定于 libtool 的架构?

将资源添加到特定于项目的 SBT 自动插件

如何在 sbt shell 会话开始时显示特定于项目的消息?

为什么没有特定于调用 GCP 函数的 IAM 角色?

为什么我的项目的虚拟环境没有在 VS Code 中自动启动?