你自己用try语句try起来,自己再用catch语句来catch吧
try{
super(second);
if(getLength() < 4)
throw new java.security.InvalidParameterException("Buffer underflow error converting IP address");
else if(getLength() > 4)
throw new java.security.InvalidParameterException("Buffer overflow error converting IP address");
}
catch(Exception ex){
out.println(ex.getMessage());
}就可以将抛出的异常catch并打印啦第二个问题:是可以不写,但是抛出异常后你没有catch,你就不知道会抛出什么异常,到测试程序或者修改程序的时候就比较麻烦啦。而且有些Exception你要现在方法中先声明:throws somethingException
之后你才可以在方法体中抛出这个somethingException,

解决方案 »

  1.   

    1 这种异常叫RuntimeException, 可以不在方法头部声明,由调用此方法的程序catch,也可以不catch ;
    2 throws是声明异常的,外层调用者必须catch
      

  2.   

    第一个问题:
      这个函数是一个网管源码中的,它里面并没有try...catch。
    第二个问题:   是不是自定义的异常不会在try中自动捕获,必须先申明:throws somethingException 才可以?
      

  3.   

    farawayzheng_necas(遥远) 的意思是不是说:当一函数申明了throws XXException后,当别的函数来调用此函数时,必须在try块中进行。
      

  4.   

    一个方法在定义它可以抛出异常,也就是说当这个方法运行时会发生异常,只是定义了一个方法,不去显示的的调用方法当然不会出异常。再说,try catch是个语句,只可以放在方法的内部使用。think it carefully.