很多时候,在java中处理异常时是使用try{...}catch(Exception e){...}还是使用throws语句?
有一次,我的一个同学谈起,他说,"在程序使用(过量)的try catch语句使程序的可读性降低,不便于维护".但是依我看来,这句话虽然很对,但是从程序的健壮性来说,这个确实在点缺点,因为你使用throws语句时自动地将异常交给系统处理,不能自己处理,显得不够直观,这给用户带来不好的感受.但是...哪位高手有没有更好的意见?
有一次,我的一个同学谈起,他说,"在程序使用(过量)的try catch语句使程序的可读性降低,不便于维护".但是依我看来,这句话虽然很对,但是从程序的健壮性来说,这个确实在点缺点,因为你使用throws语句时自动地将异常交给系统处理,不能自己处理,显得不够直观,这给用户带来不好的感受.但是...哪位高手有没有更好的意见?
throws不是交给系统,而是抛给调用者处理....
这句话了
使用throws,只不过把异常向上抛而已,什么叫向上抛,,比如我们现在编了一个读写文件的类,我们使用了throws ,那么在另外一个类里面调用读写文件的类的时候,就要用try catch 了。使用throws,只不过在本函数不处理,给别的,诸如调用其函数的处理(这个函数就要写try catch)我也是新手,来学习!!!!!
如果考虑到你的某个方法可能会出现异常,并且你希望在改方法体内处理该异常,则使用try{}catch{}。
假如出现的异常你不打算处理,希望将该异常传递给上一级,那就抛出异常,让调用该方
法的方法处理异常。
至于“在程序使用(过量)的try catch语句使程序的可读性降低,不便于维护”,过量的定义是什么?个人认为不仅仅是try catch,还有if,while等等,过多的使用都会使程序不便于维护。最好就是使功能独立的就单独作为一个单元。个人看法而已。