JAVA语言中,异常处理有哪几种方式?

JAVA语言中,异常处理有哪几种方式?
2024-11-30 06:47:17
推荐回答(5个)
回答1:

有两中方式:1.捕获异常,自己处理.
2.throw出去,让别人处理.
举个例子:
public class A{
try{
可能放生异常的语句...

}catch(Exception e){
e.getMessage();//自己处理
}

}

public class A throws Exception{

可能放生异常的语句...

}//throw出去,让别人处理
注意这里用的是throws
如果在方法里面则用throw
举例:
public class A{
try{
可能放生异常的语句...

}catch(Exception e){
e.getMessage();//自己处理
throw new Exception ("");
}

}

回答2:

java程序在运行期间发生的问题就是异常。
在Java中,把异常信息封装成了一个类,当出现了问题时,就会创建异常类对象并抛出异常相关信息(如异常出现的位置、原因等等)。
在Java中使用Exception类来描述异常。字面翻译就是“意外、例外”的意思,也就是非正常情况。事实上,异常本质上是程序上的错误,包括程序逻辑错误和系统错误。比如使用空的引用、数组下标越界、内存溢出错误等,这些都是意外的情况,背离我们程序本身的意图。错误在我们编写程序的过程中会经常发生,包括编译期间和运行期间的错误,在编译期间出现的错误有编译器帮助我们一起修正,然而运行期间的错误便不是编译器力所能及了,并且运行期间的错误往往是难以预料的。
假若程序在运行期间出现了错误,如果置之不理,程序便会终止或直接导致系统崩溃,显然这不是我们希望看到的结果。因此,如何对运行期间出现的错误进行处理和补救呢?Java提供了异常机制来进行处理,通过异常机制来处理程序运行期间出现的错误。

回答3:

Java语言提供两种异常处理机制:捕获异常和声明抛弃异常;
1)捕获异常:在Java程序运行过程中系统得到一个异常对象是,它将会沿着方法的调用栈逐层回溯,寻找处理这一异常的代码。找到能够处理这种类型异常的方法后,运行时系统把当前异常交给这个方法处理;如果找不到可以捕获异常的方法,则运行时系统将终止,相应的Java程序也将退出。捕获异常是通过try-catch-finally语句实现的。语法为:
try{
...
}catch(ExceptionName1
e){
...
}catch(ExceptionName2
e){
...
}
...
}finally{
...
}
2)声明抛弃异常:当Java程序运行时系统得到一个异常对象时,如果一个方法并不知道如何处理所出现的异常,则可在方法声明时,声明抛弃异常。声明抛弃异常是在一个方法声明中的throws子句中指明的。如:
public
int
read()
throws
IOException{
...
}
其中throws
IOException就是声明抛弃异常,throws后可以跟多个异常类型。

回答4:

1)捕获异常:在Java程序运行过程中系统得到一个异常对象是,它将会沿着方法的调用栈逐层回溯,寻找处理这一异常的代码
2)声明抛弃异常:当Java程序运行时系统得到一个异常对象时,如果一个方法并不知道如何处理所出现的异常,则可在方法声明时,声明抛弃异常。

回答5:

在JAVA中,异常分为两种
,一种
是runtime异常(RunTimeException),也就是运行时异常,这种
异常是不需要捕获的,由JAVA虚拟机自动捕获.另外一种
是非运行时异常,就是除了RunTimeException类和它的子类以外的所有异常类都是非运行时异常,这种非运行时异常都是需要手动捕获的,当然了在实际开发当中,抛异常是不行的,所以得用try{}catch{}finally{}这样的语句块来捕获异常
import
java.io.*;
public
class
FileReaderDemo
{
public
static
void
main(String[]
args)
{
FileReader
fr
=
null;
try
{
fr
=
new
FileReader("FileReaderDemo.java");
char[]
ch
=
new
char[1024];
int
len
=
0;
while((len
=
fr.read(ch))
!=
-1)
{
System.out.print(new
String(ch,0,len));
}
}
catch
(IOException
e)
{
System.out.print(e.toString());
}finally
{
if(fr
!=
null)
{
try
{
fr.close();
}
catch
(IOException
e)
{
System.out.print(e.toString());
}finally
{
fr
=
null;
}
}
}
}
}