返回信息流实际开发中,是否捕获异常,抛出异常应该由项目的逻辑来定,检查型异常却强制一定要捕获或者抛出。感觉没有必要,应该全部用运行时异常
这是一条镜像帖。来源:北邮人论坛 / java / #58169同步于 2017/11/26
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖
感觉Java的检查型异常完全没必要有啊
wislov
2017/11/26镜像同步28 回复
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
楼上说得对,健壮性的前提下异常检测是必要的。
同时使用java和另外一个语言完成同一个功能的时候你会发现,编写代码的时候java很痛苦,但是维护的时候其他代码可能会让你产生重写的冲动
我在实际开发中的感受是,捕获异常一般都是为了流程,不会为了捕获而捕获;有时候捕获异常是为了构造api的错误返回,有时候捕获异常是为了不影响上下的流程。所以是完全可以自己根据需要控制的,所以我说强制检查是没必要的
【 在 l947069962 的大作中提到: 】
: 如果把检测型异常换成运行时异常,为了健壮性, 你还是得捕获处理呀,检测型异常相当于jvm监督你做这个捕获处理的过程
我觉得健壮性不是由检查异常来决定的,而是由你代码的逻辑决定的。你看你平时用到的很多框架都很少抛出检查异常,如果你用框架的时候经常要捕获异常或者抛出去,那肯定会影响你代码本身的逻辑
【 在 wht 的大作中提到: 】
: 楼上说得对,健壮性的前提下异常检测是必要的。
: 同时使用java和另外一个语言完成同一个功能的时候你会发现,编写代码的时候java很痛苦,但是维护的时候其他代码可能会让你产生重写的冲动
好像有点道理
【 在 dss886 的大作中提到: 】
: Java是默认用户都是弱智的语言,一般语言用warning就能解决的问题,Java觉得编译期error才能保证你不忘记处理
java帮你做的很多异常抛出,其他的语言可没有。
异常处理能让一个错误处理提到外层代码处统一处理。可以跨越函数。这可能是楼主只会java不会其他计算机语言不能理解的。
运行时异常不能抛出?想必你是精通很多语言的大神了
【 在 nvyoujiaren 的大作中提到: 】
: java帮你做的很多异常抛出,其他的语言可没有。
:
: 异常处理能让一个错误处理提到外层代码处统一处理。可以跨越函数。这可能是楼主只会java不会其他计算机语言不能理解的。
我很诚意的回答你,没有任何贬低。你这样回答,以后会有人回答的你???又是个自以为是的
【 在 wislov 的大作中提到: 】
: 运行时异常不能抛出?想必你是精通很多语言的大神了