JAVA的throw和throws怎么用!

Python027

JAVA的throw和throws怎么用!,第1张

throw是语句抛出一个异常;语法:throw(异常对象);

throws是方法可能抛出异常的声明。(用在声明方法时,表示该方法可能要抛出异常)   ;语法:[(修饰符)](返回值类型)(方法名)([参数列表])[throws(异常类)]{......}    

当某个方法可能会抛出某种异常时用于throws 声明可能抛出的异常,然后交给上层调用它的方法程序处理。如:

扩展资料:

throw与throws的区别

1、throw用在方法体内,上面代码显示了,是直接在main方法体内

throws用在方法声明后面,表示再抛出异常,由该方法的调用者来处理。这个看上面的代码就理解了。

2、throw是具体向外抛异常的,抛出的是一个异常实例。

throws声明了是哪种类型的异常,使它的调用者可以捕获这个异常。

3、throw,如果执行了,那么一定是抛出了某种异常了,安生throws表示可能出现,但不一定。

4、同时出现的时候,throws出现在函数头、throw出现在函数体,两种不会由函数去处理,真正的处理由函数的上层调用处理。

参考资料:百度百科 异常处理

1、throw是在代码块内的,即在捕获方法内的异常并抛出时用的;

2、throws是针对方法的,即将方法的异常信息抛出去

3、可以理解为throw是主动(在方法内容里我们是主动捕获并throw的),而throws是被动(在方法上是没有捕获异常进行处理,直接throws的)

4、例子:

public void str2int(String str) throws Exception { //这里将得到的异常向外抛出

  try { 

    System.out.println(Integer.parseInt(str)) 

  } catch(NumberFormatException e) {

     //TODO 这里可以做一些处理,处理完成后将异常报出,让外层可以得到异常信息 

     throw new Exception("格式化异常") 

  }

}