种太阳✔ 2015-12-09 15:40 采纳率: 66.7%
浏览 1645
已采纳

求问关于java中异常处理的问题。。

不是很理解java异常处理中的try catch语句块,比如说我的catch语句块中是一个System.out.println("caught IOEexception":e.getMessage()),那么这个catch语句起到的作用就是提示我一下哪个地方有异常吗?然后我再去它提示我发生异常的地方去修改我的程序?

那么如果我的catch语句里面什么都没写,只是一个catch{};由于写了try catch语句块编译一定会通过,那岂不是说 假如现在我的程序发生了异常 然后被捕获到了 可是它没有提示我碰到发生异常的信息,并且编译通过了 然后运行的时候就会出错 这样的话使用了try catch语句块岂不是还不如不用吗。。?因为如果我不用try catch语句块的话 我的编译就通不过 会提示我哪里出错了 我还可以去改。但是使用了try catch语句块后,编译通过了 可是运行时就出错了 。。
刚开始学习java 真心想不通了〒_〒

  • 写回答

8条回答 默认 最新

  • 毕小宝 博客专家认证 2015-12-10 00:44
    关注

    用try-catch捕获异常能保证程序即使遭遇异常也扔能安按我们的设计流程运行而不会中断。
    异常分支catch中的异常处理通常是根据你的业务逻辑来做的,打印异常只是一种简单的处理方式,当然还有其他的处理,比如:记录异常到数据库,SQL异常的话在异常分支里作数据回滚,socket异常的话重置处理状态………
    你直接在catch中是空分支的话,异常就被淹没了,即使发生了了异常,你也不知道,因为你是简单处理了异常,所以程序不会抛错。
    如果没有try-catch 捕获异常,那么异常就会由虚拟机抛出,从而导致程序中断。这个就是异常捕获的意义:程序可能遭遇错误,但是仍然能正常运行。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(7条)

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘