导航:首页 > 编程语言 > java如何抛异常

java如何抛异常

发布时间:2022-07-23 13:49:36

java提供给程序主动抛出异常的语句

直接throws Exception 写在你的方法或者类名后
或者用try catch

② java中 方法中抛出异常处理方法

Java语言提供两种异常处理机制:捕获异常和声明抛弃异常。

1、捕获异常:

(1)在Java程序运行过程中系统得到一个异常对象是,它将会沿着方法的调用栈逐层回溯,寻找处理这一异常的代码。

(2)找到能够处理这种类型异常的方法后,运行时系统把当前异常交给这个方法处理;如果找不到可以捕获异常的方法,则运行时系统将终止,相应的Java程序也将退出。

(3)捕获异常是通过try-catch-finally语句实现的。语法为:

try{

...

}catch(ExceptionName1 e){

...

}catch(ExceptionName2 e){

...

}

...

}finally{

...

}

2、声明抛弃异常:

(1)当Java程序运行时系统得到一个异常对象时,如果一个方法并不知道如何处理所出现的异常,则可在方法声明时,声明抛弃异常。

(2)声明抛弃异常是在一个方法声明中的throws子句中指明的。如:

public int read() throws IOException{

...

}

其中throws IOException就是声明抛弃异常,throws后可以跟多个异常类型。

(2)java如何抛异常扩展阅读:

程序设计语言的异常机制:

1、多数语言的异常机制的语法是类似的:用throw或raise抛出一个异常对象(Java或C++等)或一个特殊可扩展的枚举类型的值(如Ada语言);

2、异常处理代码的作用范围用标记子句(try或begin开始的语言作用域)标示其起始,以第一个异常处理子句(catch, except, resuce等)标示其结束;可连续出现若干个异常处理子句,每个处理特定类型的异常。

3、某些语言允许else子句,用于无异常出现的情况。更多见的是finally, ensure子句,无论是否出现异常它都将执行,用于释放异常处理所需的一些资源。

(1)C++异常处理是资源获取即初始化(Resource-Acquisition-Is-Initialization)的基础。

(2)C语言一般认为是不支持异常处理的。Perl语言可选择支持结构化异常处理(structured exception handling)。

(3)Python语言对异常处理机制是非常普遍深入的,所以想写出不含try, except的程序非常困难。

参考资料来源:

网络-异常处理

③ JAVA如何抛出异常

throws 在方法外面,把异常抛给上一层,或者try-catch在本方法中处理异常。

④ JAVA如何抛出异常。。

如果你知道你写的某个函数有可能抛出异常,而你又不想在这个函数中对异常进行处理,只是想把它抛出去让调用这个函数的上级调用函数进行处理,那么有两种方式可供选择:

第一种方式:直接在函数头中throws SomeException,函数体中不需要try/catch。比如将最开始的例子中的testEx2改为下面的方式,那么testEx1就能捕捉到testEx2抛出的异常了。
boolean testEx2() throws Exception{
boolean ret = true;
int b=12;
int c;
for (int i=2;i>=-2;i--){
c=b/i;
System.out.println("i="+i);
}
return true;
}
第二种方式:使用try/catch,在catch中进行一定的处理之后(如果有必要的话)抛出某种异常。例如上面的testEx2改为下面的方式,testEx1也能捕获到它抛出的异常:
boolean testEx2() throws Exception{
boolean ret = true;
try{
int b=12;
int c;
for (int i=2;i>=-2;i--){
c=b/i;
System.out.println("i="+i);
}
return true;
}catch (Exception e){
System.out.println("testEx2, catch exception");
Throw e;
}
}
第三种方法:使用try/catch/finally,在catch中进行一定的处理之后(如果有必要的话)抛出某种异常。例如上面的testEx2改为下面的方式,testEx1也能捕获到它抛出的异常:
boolean testEx2() throws Exception{
boolean ret = true;
try{
int b=12;
int c;
for (int i=2;i>=-2;i--){
c=b/i;
System.out.println("i="+i);
throw new Exception("aaa");
}
return true;
}catch (java.lang.ArithmeticException e){
System.out.println("testEx2, catch exception");
ret = false;
throw new Exception("aaa");
}finally{
System.out.println("testEx2, finally; return value="+ret);
}

}

---------来自知道网友: c15836

⑤ Java:如何将异常抛到指定方法呢

JAVA没有这样的处理机制,在VB等语言里有on
error
goto(错误处理)这样的处理机制(虽然本质来说JAVA的异常跟错误是完全不同的两个概念,这里只是拿来做对比说明),JAVA会捕捉不同的异常进行不同的处理,如果你要对所有的异常进行同一个处理,可以编写一个异常处理方法,在所有捕捉到的地方调用该方法。

⑥ java中怎么抛异常和接收异常

抛出异常 就是使用 throw关键字 除了抛出常见的默认异常外,主要是用于抛出自定义异常,关于自定义异常就是继承了Exception类的子类接受异常是指捕获异常吗,似乎没有听说过接受异常这种说法,捕获异常的话主要是用 try{} catch(){} finally{} 结构try {}数据块中 是预期可能出现异常的代码catch 的 attribute 是指定希望捕获的异常,比如catch(NullPointerException e )就是只测试并捕获空指针异常,再如catch(Exception e) 就可以捕获所有继承了Exception的子类,{}则是捕获该异常后的处理代码,比如输出错误信息,etc 实际应用中可以有多个catch 用来区分不同的异常然后运行不同的代码进行处理finally{}则是无论是否捕获异常,该代码都会执行 希望对你有帮助

⑦ java抛出异常

抛出异常分为两种吧,一种是制造异常,一种是抛出可能发生的异常
throw关键字,抛出一个异常(即制造一个异常),用法 throw 异常 ,该异常必须为java.lang.Exception的子类,如果是RuntimeException子类的话,则不需要捕获或抛出异常。
throws关键字,抛出一个可能发生的异常,用在函数定义中,末尾处,以主函数为例子,public static void main(String[] args) throws 异常; 该异常必须为Exception子类,常用于其子类,是这一个方法体执行中可能抛出(throw)的异常处理。如果不进行throws,也可以用try...catch语句进行捕获。
自定义异常,类一定(间接)继承java.lang.Exception类,当然,继承java.lang.RuntimeException就可以不用进行处理,下面举一个例子:
public class TestException extends Exception {
public TestException(String message) {
super(message);
}
public TestException() {}
}
一般自定义异常需要有2个构造函数,五参构造器和String类型构造器,有参构造调用父类有参构造。

⑧ java中如何一次抛出多个异常

基本思路就是定义三个类,继承异常的父类,然后在需要抛出异常的地方,throws一下就可以了,示例如下:

{

publicstaticvoidmain(String[]args)throwsException{
try{
test(2);
}catch(Exceptione){
if(einstanceofTestAException||einstanceofTestBException
||einstanceofTestCException){
e.printStackTrace();
}else{
throwe;
}
}
}

publicstaticvoidtest(inta)throwsTestAException,TestBException,
TestCException{
if(a==0){
thrownewTestAException();//抛出第一个异常
}
if(a==1){
thrownewTestBException();//抛出第二个异常
}
if(a==2){
thrownewTestCException();//抛出第三个异常
}
}
}

{//继承父类Exception
=1L;
}

{
=1L;
}

{
=1L;
}

⑨ Java的异常抛出问题

这个方法的意思是:
1.传入两个参数, 一个int数组, 一个目标值int类型

2.如果满足条件就返回一个新的数组(return new int[]{}), 且方法就此结束

3.如果没有满足的条件, 那么抛异常, 异常在实际运用中一般用来信息传递(比如这里, 就是通知到调用方:没有解决方案)

阅读全文

与java如何抛异常相关的资料

热点内容
哪里有无损音乐app下载 浏览:221
单片机如何使用proteus 浏览:991
java常用的服务器 浏览:281
集结APP在哪里下载 浏览:800
欧洲cf玩什么服务器 浏览:529
如何连接另一台电脑上的共享文件夹 浏览:681
如何让桌面文件夹搬家到e盘 浏览:73
java自动格式化 浏览:619
ipad怎么查看文件夹大小 浏览:583
手工粘土解压球 浏览:552
在线视频教育源码 浏览:41
快四十学什么编程 浏览:754
gnumakelinux 浏览:537
视易峰云服务器怎么改系统 浏览:535
javamap取值 浏览:768
mac和win磁盘加密软件 浏览:474
苹果为什么会连接不到服务器 浏览:726
pdf格式文件如何保存 浏览:303
小霸王服务器tx什么意思 浏览:75
解释dns命令 浏览:584