用throws好。还是try{}catch{}好?

解决方案 »

  1.   

    同意楼上,这不能说好不好
    这得看你想在哪catch了,
    比如方法A会抛出异常,你若想在A就处理这个异常的话,那你就在A中Catch,
    否则就Throw出去。
      

  2.   

    恩 用途不一样吧 用catch的时候 你肯定不想放着这个Exception不管 想要立即处理了;当你想throw的时候,就是不处理 等到合适的时候再处理
      

  3.   

    方法内知道如何处理错误的,就catch住自己处理,不知道如何处理的throw给上一层。
      

  4.   

    throw给上一层,只声明有异常,catch自己处理,别人调用这个方法不会产生异常。根据自己设计来判断用那个。
      

  5.   

    我感觉底层API一般适合throws, 让调用者去处理,
    至于应用层,可以处理了就必须要throws出去了,其实就是看什么时候适合的问题,这个东西多写写了就有感觉了
      

  6.   


    举个简单的例子就是
           call            call
    action -----> service -----> DAO在action可以处理掉了,
    而service 和 DAO的可以throws出来,他们还不适合处理异常,否则前台就不知道了。
      

  7.   

    这两种方式没有哪个好之说,一般情况在写一个接口或者一个功能方法时会使用throws抛出去,因为自己不清楚出现这种情况调用者要如何处理,但如果是实现一个接口,异常则需要自己处理,而不能继续往外抛
      

  8.   

    你觉得关键的地方自己try catch,但不能常常自己去处理异常,一般都throw异常,这样方便一点
      

  9.   

    throw出去到外面不是还要catch捕获异常么? 关键是看你想在什么时候捕获异常。。
    我觉得啊
      

  10.   

    晕。两者本质有区别,无法比较。throws只是申明,并没有处理,实际调用时还是需要处理的!
      

  11.   

    两者之间谈不上那个好,那个不好,要看你设计的目的和需求了,throws 是抛出在方法可能出现的异常,这样代码看起来会好写,由方法的调用者来捕获该异常,而try catch是在可能抛出异常出将其捕获,这样代码看起来比较乱,但方法的调用中不用管该方法是否有异常!
      

  12.   

    能处理的尽量用try catch处理不了的就抛到上层处理。
      

  13.   

    用try catch处理效率高,抛到上层效率底
      

  14.   

    try catch 是现在就截获处理了
    如果不想现在处理就throws 抛到另外一个地方去等待处理 如果还不想处理 再抛出去
    始终是要处理的 就看在什么地方处理合适
      

  15.   

    应该是各有优点吧,我也是刚刚学Java,顶楼主了,共同学习
      

  16.   

    没有什么好不好的,只能说显示友好不友好的问题。。如果用throws当出现异常的时候,看不到什么异常,而通过try{}catch(){}得到友好的提示!程序开发一般多使用try{}catch(){};而且遇到比如SQLException等必抛异常还得要用try{}catch(){}
      

  17.   

    如果你希望在出现Exception时终止运行的话当然用throws,如果希望出现Exception后继续执行后面的内容就肯定要catch.
    提醒一下,try...catch...比较耗资源。