既然我们可以捕获到各种各样的异常,那么这些异常是在什么地方抛出的呢?
在编程过程中,我们往往会遇到这种情况,在当前环境中无法解决,比如用户传入的参数错误,IO设备问题等。此时,就要从当前环境中抛出异常提交给上级来处理。
在Java语言中,使用throw关键字来抛出异常。来看以下代码
- public class A**Exception
- {
- private String id;
-
- public void setID(String id)
- {
- if(id.length() == 7)
- {
- this.id = id;
- }else
- {
- throw new IllegalArgumentException("参数长度不是7位");
- }
- }
- }
以上代码,我们就抛出了一个IllegalArgumentException类型的异常。
声明异常
如果在一个方法体中抛出了异常,我们就希望调用者能够去捕获异常。那么,如何通知调用者呢?
在JAVA语言中,通过throws关键字声明某个方法可能抛出的异常,以上代码中,我们抛出一个IllegalArgumentException类型的
异常。通过以下操作,就可以让调用者明白该方法有可能出现什么样的异常,要及时捕获!
- public class A**Exception
- {
- private String id;
-
-
- public void setID(String id) throws IllegalException
- {
- if(id.length() == 7)
- {
- this.id = id;
- }
- else
- {
- throw new IllegalArgumentException("参数长度应为7");
- }
- }
- }