看书的时候觉得很迷惑,java里面那么多异常,IOExceptin啊,EOFException啊,等等,我要问的是,我什么时候用异常,就是那个catch里,还有就是catch里捕捉哪种异常。第三就是比如catch{IOExceptin e} catch{IOExceptin f} 里面还带这些字母,这些字母表示什么啊。
大侠们能不能详细地说一说,谢谢。
分不够可以再加。

解决方案 »

  1.   

    捕捉异常的时候 try{}catch{}是配对使用的, try 里是会产生异常的语句,如果语句正确那么就继续执行后面的,然后跳过catch。如果语句不正确,就跳到catch执行IOExceptin e 就是所谓你抓住的异常,字母是没所谓的,就是个变量名,某型异常某个变量。比如说,你可以在catch括号里加上输出语句输出e的内容,你就可以进一步知道到底是哪里出错了。至于什么时候用汗,我一般都是等编译的时候,会有提示什么时候该加什么异常捕捉。还有就是一般JAVA和外界连接的时候,DATABASE或是SERVER什么的,一般会要求。
      

  2.   

    有些类的方法本身定义的时候就有throws,它的意思是把这里有可能抛出的异常交给调用者去处理了,如果你要调用这样的函数,你必须在程序里面try(somemethod)catch(...),话又说回来,你也直接可以在你调用这个方法的方法上throws掉这个异常,让调用你的方法的调用者去处理
    简单的说就是函数上又throws的就是把异常交给上一级去处理
    另外在函数体内部的try catch就是现场捕获异常并进行处理了捕获哪种异常就要看可能产生什么异常了,如果你调用的方法throws SomeException,那么你也必须catch SomeException,这个有对应关系的,实在搞不请就catch Exception或throwable,前者是最定层的你所说的e、f其实就是对象名,类似于String str的str
      

  3.   

    建议楼主看看think in java...
      

  4.   

    如果有很多异常,只要用一个try,catch由最里面的异常开始摆最前面,因为,java的异常捕捉是只要是异常就捕捉,所以要先放子类的,再放父类的,但它只会捕捉一个