本篇内容介绍了“Java中异常类Exception的用法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
Java中,异常类继承自 java.lang.Throwable 类
如图,Throwable 有两个直接子类 Error 和 Exception ,其中 Error 代表程序中产生的错误,Exception 代表程序中产生的异常。
Error 类称为错误类,它表示Java运行时产生的系统内部错误或资源耗尽的错误,是比较严重的。仅考修改程序本身是不能恢复执行的。如系统崩溃,虚拟机错误等。
Exception类称为异常类,它表示程序本身可以处理的错误。
Throwable 常用方法
String getMessage()——返回此throwable的详细消息字符串
void printStackTrace()——将此throwable及其追踪输出至标准错误流
void printStackTrace(PrintStream s)——将此throwable及其追踪输出到指定的输出流
编译时异常处理 运行时异常——不编写异常处理程序也可以编译通过 编译时异常——不编写异常处理程序无法编译通过
异常处理程序
/*
Java中,异常处理Exception
*/
public class TestMain {
//定义一个方法,实现两个证书相除
static int divide(int x,int y) {
int result = x / y ;
return result;
}
//定义一个方法,实现两个证书相除,编写了异常处理的方法
static int divide2(int x,int y) {
// 【1】将可能发生异常的代码放到try的{}里
try {
int result = x / y ;
return result;
}catch(Exception e) { //【2】当try代码块的程序发生异常时,执行这个代码块
System.out.println("捕获的异常信息为:"+e.getMessage());
}
return -1;
}
//定义一个方法,实现两个证书相除,编写了异常处理的方法
static int divide3(int x,int y) {
// 【1】将可能发生异常的代码放到try的{}里
try {
int result = x / y ;
return result;
}catch(Exception e) { //【2】当try代码块的程序发生异常时,执行这个代码块
System.out.println("捕获的异常信息为:"+e.getMessage());
}finally {// 【3】该语句块不受return语句影响
System.out.println("异常是否发生都执行的代码块!");
}
return -1;
}
public static void main(String[] args) {
// 实验案例,除数为 0
int result=divide(22,2);
System.out.println(result);
int result2=divide2(22,2);
System.out.println(result2);
int result3=divide2(22,0);
System.out.println(result3);
System.out.println("==================================");
int result4=divide3(22,0);
System.out.println(result4);
}
}
抛出异常
/*
Java中,异常处理Exception
抛出异常
*/
public class TestMain2 {
//定义一个方法,实现两个证书相除
static int divide(int x,int y) {
int result = x / y ;
return result;
}
//定义一个方法,实现两个证书相除,编写了抛出异常的方法
static int divide2(int x,int y) throws Exception {
int result = x / y ;
return result;
}
public static void main(String[] args) {
// 实验案例,除数为 0
// 对于抛出的异常,调用者必须进行异常处理,或者继续抛出
try {
int result=divide2(22,0);
System.out.println(result);
}catch(Exception e) {
System.out.println("捕获的异常信息为:"+e.getMessage());
}
}
}
“Java中异常类Exception的用法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
原文链接:https://my.oschina.net/fldong/blog/5051361