概述
异常处理机制
- 抛出异常
- 捕获异常
异常处理的五个关键词:
try、catch、finally、throw、throws
实例:int a = 1;int b = 0;
System.out.println(a/b);
异常:Exception in thread “main” java.lang.ArithmeticException: / by zero
package com.exception;
public class Test {
public static void main(String[] args) {
int a=1;
int b=0;
try{//监控区域
System.out.println(a/b);
}catch(ArithmeticException e){//捕获异常
System.out.println("程序出现异常,变量b不能为0");
}finally{//处理善后工作
System.out.println("finally");
}
//finally可以不要,假设IO流、资源,关闭
}
}
输出:
程序出现异常,变量b不能为0
finally
package com.exception;
public class Test {
public static void main(String[] args) {
int a=1;
int b=0;
try{//监控区域
new Test().a();
}catch(Error e){//catch(想要捕获的异常类型!) Throwable最高级
捕获异常
System.out.println("Error");
}catch(Exception e){//可以捕获多个异常,但是从上至下,范围从小到大
}catch(Throwable e){
} finally{//处理善后工作
System.out.println("finally");
}
//finally可以不要,假设IO流、资源,关闭
}
public void a(){b();}
public void b(){a();}
}
输出:
Error
finally
//快捷键:选中语句 ctrl+alt+t
try {
System.out.println(a/b);
} catch (Exception e) {
e.printStackTrace();//打印错误的栈信息
} finally {
}
package com.exception;
public class Test {
public static void main(String[] args) {
int a=1;
int b=0;
try {
new Test().test(a,b);
} catch (ArithmeticException e) {
e.printStackTrace();
} finally {
}
}
//假设在这个方法中处理不了这个异常。方法上抛出异常
public void test(int a, int b) throws ArithmeticException{
if(b==0){
//throw throws
throw new ArithmeticException();//主动抛出异常,一般在方法中使用
}
}
}
最后
以上就是平常时光为你收集整理的异常2-异常处理机制的全部内容,希望文章能够帮你解决异常2-异常处理机制所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复