[Java] try catch与if else

try catch与if else

if(#)
{
doSomething();
}
else
{
doAnotherThing();
}
这是一个简单的if else语句,当满足if中的#条件时,执行doSomething(),否则执行doAnotherThing()。
try {
逻辑代码块;
} catch(ExceptionType e) {
处理代码块;
}
这是一个try catch 语句,程序尝试执行try中的逻辑代码块,如果出现异常则实行处理代码块。

两者在逻辑上还是非常相似的,那么为什么java要采用try catch来处理
在网上搜集资料后,大概总结了一下
if … else…属于程序结构中的分支结果,try…catch属于顺序结构,虽然说在出现异常的时候编译器会跳到捕获异常的入口处,但这是和传统意义上if … else结构存在根本性的差别。
也就是说,if else是人工判断逻辑结果,而try catch包含了更多异常比如机械处理异常。
好比如果因为环境问题导致代码执行异常,如果if else没有考虑进去和加入确切的条件,程序就会崩溃,而try…catch会进入catch阶段

下为应用场景的判断

if中的条件无法获得时,比如出现无返回值的错误时,用try catch
所有异常都能预知时,用if else,否则用try catch

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值