Java怎么抛出异常,java抛出异常是什么意思
如果要在Java中抛出异常,需要使用Java的两个关键字,这两个关键字都是用于异常处理机制的。
如何解决写爬虫IP受阻的问题?立即使用。
方法不处理此异常,但调用级别会向上传递。无论谁调用这个方法都会处理这个异常。这将引发异常。
throw : 抛出生成的异常(强调动作)。引发的异常可以是异常引用,也可以是异常对象。(位置:在方法内部)
throws : 如果一个方法可能有异常,但是它没有能力处理它,那么可以在方法声明中使用throws子句来声明抛出了异常。用它修饰的方法向调用方表明该方法可能抛出异常(可以是一种类型也可以是多种类型,用逗号分隔)(位置:写在方法名或方法名列表之后,方法体之前。)
注意 : 调用可能抛出异常的方法。您必须添加一个try-catch代码块来尝试捕获异常,或者添加一个throws语句来将异常抛出给更高级别的调用方进行处理。这里需要注意一个细节:新异常包含原始异常的所有信息。据此,我们可以追踪最初异常发生的位置。
简单使用:
//定义一个方法来抛出数组越界和算术异常(多个异常用“,”分隔)
public void Test1(int x)抛出ArrayIndexOutOfBoundsException,ArithmeticException{
system . out . println(x);
if(x==0){
System.out.println(“无异常”);
返回;
}
//数据超出界限时出现异常
else if (x==1){
int[]a=new int[3];
a[3]=5;
}
//算术异常
else if (x==2){
int I=0;
int j=5/0;
}
}在main方法中调用:
公共静态void main(String[] args) {
//创建一个对象
exception inital object=new exception inital();
//调用将引发异常的方法。使用try-catch块
尝试{
对象。test1(0);
}catch(异常e){
system . out . println(e);
}
//数组越界异常
尝试{
对象。test1(1);
} catch(ArrayIndexOutOfBoundsException e){
System.out.println(数组越界异常: e );
}
//算术异常
尝试{
对象。测试1(2);
}catch(算术异常e){
System.out.println(算术异常: e );
}
//使用throw抛出异常(可以抛出异常对象或对异常对象的引用)
尝试{
ArrayIndexOutOfBoundsException exception=new ArrayIndexOutOfBoundsException();
抛出异常;//new ArrayIndexOutOfBoundsException();
} catch(ArrayIndexOutOfBoundsException e){
System.out.println(thorw抛出异常: e );
}
}运行结果 :
总结下 throw 和throws 关键字的区别
1.编写:throw用在方法体中,在throws函数名之后,或者在参数列表之后的方法体之前。
2.含义:throws强调动作,而Throws则表示一种倾向,这种倾向可能但不一定真的会发生。
3.throws后面是一个异常类,可以是一个,多个,多个之间用逗号分隔。Throw后面跟一个异常对象,或者对异常对象的引用。
4.用户抛出一个异常。当前方法中抛出异常时,当前方法的执行结束(抛出后,如果有finally语句,将一直执行到finally语句。)。可以理解为回归。
这就是java抛出异常的细节。更多请关注我们的其他相关文章!
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。