Java程序员应该手动抛出什么异常?不能抛出RuntimeException吧?

程序员chin 2014-11-14 10:49:15
if(sectionCodeT!=null && !"".equals(sectionCodeT)){
boolean b = this.validateCodeBySectionType(s.getSectionType(),sectionCodeT);
if(b){ //编码重复
throw new RuntimeException("编号已经存在");
}
}else{
throw new NullPointerException("编号为空");
}
上边的代码是想在service层抛出,然后在controller层用try catch接收到这个异常,但是总觉得抛出这两个异常不太好,又说不上来应该抛出什么异常,莫非要让我自定义异常吗

还有,作为程序员 手动抛出 运行时异常好吗??总觉得应该抛出检查异常,就是非运行时异常,那我应该抛出什么??
...全文
24046 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
reupe 2017-07-06
  • 打赏
  • 举报
回复
引用 10 楼 reupe 的回复:
最好不要抛出RuntimeException以及它的子类。 因为RumtimeException以及其子类比如NullPointerException,IndexOutOfBoundsExceptiond等等,这些所谓"checked"异常,程序员通过处理,是完全可以避免异常的,换句话说,这类异常出现,是因为你没处理好代码。 而IOException这些"unChecked"异常很多情况下你是无法控制的,这类异常的发生是 你所不能预测的,这就需要抛出,告诉方法调用者可能会发生这样的异常
这里面有个错误,RuntimeException是unchecked异常 IOException是checked异常
reupe 2017-07-06
  • 打赏
  • 举报
回复
最好不要抛出RuntimeException以及它的子类。 因为RumtimeException以及其子类比如NullPointerException,IndexOutOfBoundsExceptiond等等,这些所谓"checked"异常,程序员通过处理,是完全可以避免异常的,换句话说,这类异常出现,是因为你没处理好代码。 而IOException这些"unChecked"异常很多情况下你是无法控制的,这类异常的发生是 你所不能预测的,这就需要抛出,告诉方法调用者可能会发生这样的异常
qq_16690419 2017-06-02
  • 打赏
  • 举报
回复
Exception的子类,非RunTimeException的子类是必须要处理的;RunTimeException的子类是可处理可不处理的。。。。
mysteryboy2000 2015-01-14
  • 打赏
  • 举报
回复
空手就想套白狼 想让人给你做项目,还好意思发帖 你真搞笑。
Defonds 2014-11-14
  • 打赏
  • 举报
回复
就抛自定义异常呗
程序员chin 2014-11-14
  • 打赏
  • 举报
回复
知道请回复谢谢各位
Howhyou_ 2014-11-14
  • 打赏
  • 举报
回复
运行时异常不用没必要抛出吧
  • 打赏
  • 举报
回复
引用 4 楼 duanlexianer 的回复:
[quote=引用 3 楼 littlebrain4solving 的回复:] 1、一般运行时异常属于抽象异常;项目应该自定义大类运行时异常类来抽象表示问题所在; 2、检查时异常一般都是把发生的问题具体化。
我在本文代码块中应该抛出的是自定义 检查异常吧,?而不是抛出运行时异常?[/quote] 这里应该抛出检查异常。
程序员chin 2014-11-14
  • 打赏
  • 举报
回复
引用 3 楼 littlebrain4solving 的回复:
1、一般运行时异常属于抽象异常;项目应该自定义大类运行时异常类来抽象表示问题所在; 2、检查时异常一般都是把发生的问题具体化。
我在本文代码块中应该抛出的是自定义 检查异常吧,?而不是抛出运行时异常?
  • 打赏
  • 举报
回复
1、一般运行时异常属于抽象异常;项目应该自定义大类运行时异常类来抽象表示问题所在; 2、检查时异常一般都是把发生的问题具体化。

81,114

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧