[@炯轩][¥20]如何优雅的处理异常(java)?-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

[@炯轩][¥20]如何优雅的处理异常(java)?

月下丶 2018-12-14 21:25:07 1065

我看开源中国的很多源码,比如负责从网络解析数据,从数据库的操作都抛异常。这么做的原因是什么。是不是通常情况下,返回值是void的方法一般都抛出异常(如果有的话),有返回值的就在内部try,catch,然后通过返回值标识这个方法是不是执行成功。比如返回值是String时,就约定返回""就是发生了异常,A方法调用了B方法,B方法内部可能会产生IOException,B方法是带有返回值的,A方法的内部也会有其他的操作产生IOException,这时候,让B方法抛出一个IOException,是不是便于在A方法中的catch中集中处理,什么样的情况适合自定义异常?

Java 数据库
分享到
取消 提交回答
全部回答(3)
  • t.s.f.h
    2019-07-17 23:21:34
    0 0
  • yu_hc200
    2019-07-17 23:21:34

    返回值一般代表正常的业务逻辑,说明系统没有遇到问题,一般不用来表达系统中的错误。而异常一般是系统出现问题,需要上层处理才会抛出。处理异常的代码不应该和主业务逻辑混合,异常层层上抛本身也是方便代码结构处理,不用一层一层的把错误结果向上传递

    0 0
  • lusing
    2019-07-17 23:21:34

    返回值的坏处是可以不去处理,而Exception的好处是,除了RuntimeException外,不处理通不过编译。
    这样可以强制程序员去思考错误处理逻辑。
    不建议直接try catch像Exception这样的基类。

    0 0
添加回答
数据库
使用钉钉扫一扫加入圈子
+ 订阅

分享数据库前沿,解构实战干货,推动数据库技术变革

推荐文章
相似问题