除了可以使用try…catch语句和try…catch…finally语句处理异常以外,还可以使用throws处理异常。
在开发中,有的时候我们没有权限处理该异常,我们不知道该如何处理异常,或者不想处理异常,这种情况下我们可以将异常抛出,抛出给调用者处理。
throws处理异常的格式:
[访问权限修饰符]返回值类型方法名(参数列表)[throws异常类名]{方法体;[return返回值];}
注意事项:
1)抛出异常的处理方法千万不能抛出给JVM处理[主方法]。
2)如果一个方法抛出的是一个编译时异常,那么调用者必须处理。
3)如果一个方法抛出的是一个运行时异常,可以处理也可以不处理,建议处理,提高程序的安全性。
4)子类重写的方法声明的异常不能够被扩大。
5)throws表示一种异常发生的可能性,可以声明多个异常类。
throw异常处理方法:
格式:throw异常对象;
注意:我们可以发现其实throw和throws的作用都是将异常抛出给调用者或者虚拟机来处理,但是两者有个根本区别就是throw抛出的是异常对象,而throws声明的是异常类。
throw和throws区别:
1)throw抛出的是异常对象,throws声明的是异常类。
2)throw只能够抛出一个对象,throws可以声明多个异常类。
3)throw表示异常已经发生,throws是一种异常的可能性。
4)throw在方法体内出现,throws在方法的声明上。