java中try catch与if else区别

  有人说了try ...catch...不就是抛出异常以文本形式显示出来么?if...else...也可以阿.else里面写showmessage不就可以么???
    首先try提捕获异常的,即异常并不是我们能预先知道的,所以不能用if什么条件来判断的。异常是需要在程序的运行中进行捕获的。
    举个例子来看看吧:
  int a=200,b=0;
    int c;
    try
    {
      c=a/b;
    }
    catch(...)
   {
      ShowMessage("Can not devided by zero!");
   }
可是如果上面的例子用if…else…,就不能够显示else后面的结果了。

的确, if可以进行简单的过滤, 但是, 由于机器或者说环境各异, 可能会产生一些无法预知的异常, 这是在开发阶段无法预知的, 所以就要用try...catch来捕捉, 而if是无法做到的.
   从程序结构上来说:

if…else…属于程序结构中的分支结构;
try…catch…应该属于程序结构中的顺序结构,虽然说在出现异常的时候编译器会跳到捕获异常的入口处,但这和传统意义上的if…else…结构存在根本性的差别.

     当不可预知有什么异常的时候,用try
    当过多情况需要处理,用if就会太繁琐
    当你需要观察的代码没有返回值的时候
,if()当中没法作判断,必须用try
大致就是这3种情况

    还有就是:意义不一样,异常是在运行时不定出现的。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值